이 튜토리얼에서는 당신이 당신의 Node.js 응용 프로그램에 채팅 서비스에 대한 엔드포인트를 추가하는 방법을 배울 것입니다. 우리의 목표는 URL /api/chat에 대한 간단한 GET 엔드포인트를 생성하여 클라이언트에게 응답을 반환하는 것입니다. 이 엔드포인트는 OpenAI API와 나중에 연결되어 채팅 자동완성을 생성합니다. 바로 시작하여 필요한 단계를 진행해 봅시다.
주요 포인트
- Node.js 응용 프로그램에서 GET 엔드포인트 생성
- 데이터 전송을위한 JSON 사용
- OpenAI API와의 채팅 자동완성 통합
단계별 안내
단계 1: API 폴더 생성
깔끔한 코드를 보장하기 위해 API 엔드포인트를위한 특별한 폴더를 만들어야합니다. 당신의 React 프로젝트에서는 pages 디렉토리 아래에 API라는 새 하위 폴더를 만들어야합니다.

단계 2: chat.js 파일 만들기
방금 만든 API 폴더에서 chat.js라는 새 파일을 만들어야합니다. 이 파일에는 GET 요청을 처리하는 Node.js 코드가 포함됩니다.

단계 3: GET 핸들러 구현
chat.js 파일에서 GET 핸들러를 정의해야합니다. 이 핸들러는 URL /api/chat로 들어오는 요청을 처리합니다. Astro에서 GET 핸들러로 인식되기 위해서는 함수의 이름이 get이어야합니다.
단계 4: 간단한 응답 반환
당분간 간단한 JSON 응답을 반환 할 수 있습니다. 이를 위해 new Response()를 사용하여 응답을 초기화하고, JSON.stringify()를 사용하여 answer 속성을 포함하는 객체를 직렬화합니다. 첫 테스트 응답으로 "Hello"를 단순하게 설정할 수 있습니다.

단계 5: 상태 및 헤더 설정
응답 본문을 반환하는 것 외에도 상태 코드 및 헤더를 추가 할 수 있습니다. 성공한 요청을 나타내는 상태를 200으로 설정하고, 클라이언트가 이것을 JSON으로 인식하도록 Content-Type을 application/json으로 정의하세요.
단계 6: 브라우저에서 엔드포인트 테스트
설정을 마치면 엔드포인트를 테스트 할 수 있습니다. 브라우저를 열고 URL http://localhost:3000/api/chat로 이동하여 로컬 개발 환경에서 응답을 확인해야합니다. 이전 단계에서 정의한 응답을 볼 수 있습니다.

단계 7: 올바른 반환 확인
URL을 입력하고 브라우저에서 올바른 JSON 응답을 볼 때 GET 핸들러가 작동하는 것입니다. 이 간단한 구현은 나중에 OpenAI API를 통합하여 채팅 자동완성을 확장하는 기반을 제공합니다.

단계 8: OpenAI API로 확장
다음 세션에서는 이미 구현된 엔드포인트를 확장하여 OpenAI API에서 채팅 자동완성을 검색합니다. 그러나 현재 엔드포인트는 API를 통한 HTTP 상호작용에 대한 필수적인 이해를 이미 제공합니다.

요약
이 튜토리얼에서 당신은 JSON 응답을 반환하는 간단한 GET 엔드포인트를 만드는 방법을 배웠습니다. 이 기본적인 구현은 미래 확장을 위한 기초를 마련하며, 특히 다음 비디오에서 다룰 OpenAI API 통합을 위한 준비 작업을 수행합니다.
자주 묻는 질문
프로젝트에서 하위 폴더를 어떻게 만들 수 있나요?pages 디렉토리에서 API이름의 폴더를 생성함으로써 프로젝트에서 하위 폴더를 만들 수 있습니다.
GET 핸들러의 이름이 get이어야하는 이유는 무엇인가요?Astro에서 해당 HTTP 요청을 인식하는 데 핸들러의 이름이 중요합니다.
새 엔드포인트를 어떻게 테스트 할 수 있나요?새 GET 핸들러의 응답을 확인하려면 브라우저에 http://localhost:3000/api/chat 주소를 입력하세요.
다음 비디오에서 무엇을 다룰 예정인가요?다음 비디오에서는 OpenAI API로부터 채팅 자동완성을 검색하기 위해 현재 엔드포인트를 확장할 것입니다.