Promise를 활용한 키워드 추천 기능 구현

키워드 추천 기능은 사용자가 입력한 텍스트를 기반으로 관련된 키워드를 자동으로 추천하는 기능입니다. 이번에는 JavaScript의 Promise를 활용하여 키워드 추천 기능을 구현하는 방법에 대해 알아보겠습니다.

키워드 추천 API 호출

키워드 추천 기능을 구현하기 위해서는 외부 API를 호출하여 관련된 키워드를 받아와야 합니다. 예를 들어, Google의 자동완성 API를 사용하여 키워드를 추천하는 방법을 알아보겠습니다.

const fetch = require('node-fetch');

function fetchKeywordSuggestions(keyword) {
  return new Promise((resolve, reject) => {
    const url = `https://www.googleapis.com/autocomplete/v1/predictions?input=${encodeURIComponent(keyword)}&key=YOUR_API_KEY`;
    
    fetch(url)
      .then(response => response.json())
      .then(data => {
        const suggestions = data.predictions.map(prediction => prediction.description);
        resolve(suggestions);
      })
      .catch(error => {
        reject(error);
      });
  });
}

위의 코드는 fetchKeywordSuggestions 함수를 정의한 것입니다. 이 함수는 입력된 keyword를 기반으로 Google 자동완성 API를 호출하여 키워드 추천을 받아옵니다. 이때, YOUR_API_KEY 자리에는 본인의 Google API 키를 사용해야 합니다.

Promise를 활용한 키워드 추천 기능 구현

이제 키워드 추천 기능을 구현하기 위해 위에서 정의한 fetchKeywordSuggestions 함수를 활용해보겠습니다.

function getKeywordRecommendations(input) {
  return new Promise((resolve, reject) => {
    fetchKeywordSuggestions(input)
      .then(suggestions => {
        resolve(suggestions);
      })
      .catch(error => {
        reject(error);
      });
  });
}

위의 코드는 getKeywordRecommendations 함수를 정의한 것입니다. 이 함수는 입력된 input을 기반으로 키워드 추천을 받아오는데, 내부적으로 fetchKeywordSuggestions 함수를 호출하여 Promise를 반환합니다.

사용 예제

이제 키워드 추천 기능을 사용하는 예제를 살펴보겠습니다.

const input = 'programming';
getKeywordRecommendations(input)
  .then(suggestions => {
    console.log('Keyword Recommendations:', suggestions);
  })
  .catch(error => {
    console.error('Error:', error);
  });

위의 코드는 input으로 ‘programming’을 넣어서 키워드 추천을 받아오는 예제입니다. 추천된 키워드들은 suggestions 변수에 담겨서 콘솔에 출력됩니다.

결론

이번 기사에서는 Promise를 활용하여 키워드 추천 기능을 구현하는 방법에 대해 알아보았습니다. Promise를 사용하면 비동기 작업을 보다 간편하게 처리할 수 있으며, 키워드 추천과 같은 기능을 더욱 유연하고 효율적으로 구현할 수 있습니다.

#Promise #JavaScript #키워드추천 #API