박주니 개발 정리

nodejs로 네이버쇼핑몰 api 적용하는 방법 본문

node

nodejs로 네이버쇼핑몰 api 적용하는 방법

박주니 2024. 6. 16. 20:25
728x90
반응형

1. 네이버 developers에 들어가셔서 로그인한 후 애플리케이션 등록으로 들어갑니다. 

https://developers.naver.com/main/

 

NAVER Developers

네이버 오픈 API들을 활용해 개발자들이 다양한 애플리케이션을 개발할 수 있도록 API 가이드와 SDK를 제공합니다. 제공중인 오픈 API에는 네이버 로그인, 검색, 단축URL, 캡차를 비롯 기계번역, 음

developers.naver.com

2.  사용 API는 검색, 데이터랩(검색어트랜드), 테이터랩(쇼핑인사이트)를 선택하시고 web 설정은 현재 local로 설정할 거기 때문에 해당되는 port로 설정하시면 됩니다. 

3. server.js에 네이버 쇼핑몰 api 간단 적용할 코드를 복사해서 붙여놓습니다. 

const express = require("express");
const axios = require("axios");
const dotenv = require("dotenv");

dotenv.config();

const app = express();
const port = 3000;

app.get("/search", async (req, res) => {
  const query = "나이키";
  const encodedQuery = encodeURIComponent(query);
  const url = `https://openapi.naver.com/v1/search/shop.json?query=${encodedQuery}`;
  const ClientID = process.env.NAVER_CLIENT_ID;
  const ClientSecret = process.env.NAVER_CLIENT_SECRET;

  try {
    const response = await axios.get(url, {
      headers: {
        "X-Naver-Client-Id": ClientID,
        "X-Naver-Client-Secret": ClientSecret,
      },
    });

    let data = response.data.items;
    console.log(data);
  } catch (error) {
    res.status(500).json({ error: error.message });
  }
});

app.listen(port, () => {
  console.log(`Server is running on http://localhost:${port}`);
});

추가 설명)

1. express axios dotenv를 설치합니다 

2. 나이키 위주 query로 진행했습니다. 다른 원하시는 물품이 있으면 변경하시면 됩니다. 

npm i express axios dotenv

4. 애플리케이션 정보에서 Client ID, Client Sercret 정보를 확인합니다. 

5. .env를 추가하고 그 안에 Client ID, Client Sercret 정보를 넣습니다. 

NAVER_CLIENT_ID= ClientID
NAVER_CLIENT_SECRET= Client Secret

6. server.js를 실행하고 브라우저에서 localhost:3000/search를 실행하시면 됩니다. 

추가 설명)

1. node server.js  실행

node server.js

2. 브라우저에서 localhost:3000/search를 실행

 

응용하실려면 

https://developers.naver.com/docs/serviceapi/search/shopping/shopping.md

 

검색 > 쇼핑 - Search API

검색 > 쇼핑 쇼핑 검색 개요 개요 검색 API와 쇼핑 검색 개요 검색 API는 네이버 검색 결과를 뉴스, 백과사전, 블로그, 쇼핑, 웹 문서, 전문정보, 지식iN, 책, 카페글 등 분야별로 볼 수 있는 API입니다

developers.naver.com

 

참고하시면 됩니다. 

728x90
반응형
Comments