Node.js

Node.js, Express 및 Couchbase로 REST 기반 애플리케이션 구축하기

Node.js를 처음 사용하는 경우 Couchbase 또는 두 가지 모두에 해당한다면 실력을 레벨업할 수 있습니다.

오늘은 Node.js와 Express를 사용하여 Couchbase에서 문서를 검색하기 위한 최소한의 REST 기반 애플리케이션을 구축하는 방법을 보여드리겠습니다.

이 게시물은 다음에 대한 소개 시리즈를 이어갑니다. 카우치베이스와 함께 Node.js 사용 (포함 지난주 비동기 함수에 대한 포스팅을 참고하세요.).

오늘 포스팅에서는 이전 예제인 Node.js와 카우치베이스에 대해 설명했으니 아직 읽지 않으셨다면 앞의 두 글을 확인해 보세요. 또한 JavaScript, Node.js 및 NoSQL 문서 데이터베이스에 기본적으로 익숙하다고 가정하겠습니다.

Express 모듈 받기

지난주에 이어서 웹 기반 REST 인터페이스를 추가하여 웹 애플리케이션을 데이터베이스에서 격리할 수 있습니다. 이렇게 하려면 Express 모듈이 필요합니다. 이 모듈을 설치하고 다음을 사용하여 패키지 종속성에 추가하세요:

Express가 올바르게 설치되었는지 테스트하려면 작은 애플리케이션을 빌드하면 됩니다(app.js)를 호출하면 HTTP 서버를 생성하고 헬로 월드 값으로 설정합니다. 나중에 편리하게 사용할 수 있도록 비동기 함수를 사용할 수 있습니다:

이를 실행하고 포트 3000에서 웹 브라우저를 통해 액세스합니다. 아래 이미지와 같이 표시될 것입니다:

Hello world showing in a web browser from Node.js and Express

축하합니다! 작은 앱이긴 하지만 첫 번째 Express 앱을 성공적으로 구축하셨습니다.

애플리케이션 구축

애플리케이션에는 세 가지 구성 요소가 있습니다:

    • 경로 관리
    • 데이터베이스 연결
    • HTTP 서버 계층

데이터 검색을 위한 빠른 경로 추가

애플리케이션이 루트 경로를 가로채서 제공합니다. /. 라는 경로를 생성합니다. get 를 사용하여 특정 문서를 검색할 수 있습니다. REST 사용자는 문서 ID를 제공하고 다음을 반환합니다. JSON 문서 다음 구문을 사용합니다:

해당 경로를 생성하는 함수에는 두 가지 중요한 개체가 포함되어 있습니다. req (요청) 및 res (결과) - 앱과 데이터를 주고받는 데 사용할 것입니다. 아래 예시를 참조하세요:

참고 :docid 매개변수는 요청 객체를 통해 액세스할 수 있는 변수가 됩니다: var docid = req.params.docid. 그런 다음 getDoc() 함수에 대한 자세한 내용은 잠시 후에 다룰 예정입니다.

이 애플리케이션에는 모든 것을 비동기식으로 실행할 수 있는 아래의 편의 기능도 있습니다:

위의 함수는 호출을 멋지게 래핑하지만 여기서는 자세히 설명하지 않겠습니다(다음 글에서 설명할 수 있습니다). 지금은 스크립트에 추가하기만 하면 됩니다.

문서 검색 기능 추가

스크립트의 데이터베이스 연결은 이 시리즈의 이전 게시물과 마찬가지로 기본입니다. 스크립트에서 버킷 및 컬렉션을 클릭한 다음 get() 함수를 사용하여 주어진 문서 ID를 기준으로 문서를 검색할 수 있습니다.

먼저 연결 부분이 있습니다. 다른 사용자 아이디, 비밀번호, 버킷 또는 컬렉션이 있는 경우 여기에서 이를 대체하세요:

저는 데이터베이스도 호스팅하는 네트워크의 서버에서 앱을 호스팅합니다(localhost). 하지만 저는 개발용 노트북에서 앱에 액세스하므로 아래 웹 브라우저 샘플에서 IP 주소를 볼 수 있습니다. 192.168.0.158 REST API를 누르면 됩니다.

이제 문서 검색의 주요 기능을 살펴보겠습니다:

저희는 컬렉션 변수, 즉 앞서 정의한 버킷 등에 대한 카우치베이스 데이터베이스 연결입니다. 그리고 get() 함수는 문서 ID가 포함된 문자열을 입력으로 받습니다. 예를 들어 hotel_5336 이 시리즈의 이전 게시물에서

REST API 실행

REST API용 HTTP 서버도 여전히 실행해야 합니다. 이 게시물의 첫 번째 테스트 앱 이후 변경된 사항은 없습니다:

모든 코드에 대한 전체 목록은 아래에 포함되어 있습니다. 이제 이전처럼 서버를 실행할 수 있습니다( 노드 app.js)를 클릭하고 웹 브라우저를 통해 문서 ID를 제공합니다, https://192.168.0.158:3000/get/hotel_5336.

요청된 문서가 콘솔에서 인쇄되어 브라우저로 반환됩니다:

Database retrieval REST API with Node.js and Couchbase

전체 코드 샘플

결론

다음 글에서는 다양한 Express 경로를 사용하여 데이터베이스 쿼리를 작성하고, 전체 텍스트 검색을 수행하는 방법 등을 다룰 예정입니다.

그 동안 다음 중 몇 가지를 수행하여 애플리케이션을 한 단계 업그레이드하세요:

나머지 Node.js + Couchbase 방법 시리즈도 확인해 보세요:

 

읽기만 하지 마세요. 사용해 보기:
Couchbase 다운로드 및 구축 시작하기

 

이 문서 공유하기
받은 편지함에서 카우치베이스 블로그 업데이트 받기
이 필드는 필수 입력 사항입니다.

작성자

게시자 타일러 미첼 - 선임 제품 마케팅 매니저

카우치베이스에서 선임 제품 마케팅 매니저로 일하며 제품에 대한 지식을 대중에게 알리는 동시에 가치 있는 콘텐츠로 현장 팀을 지원하고 있습니다.

댓글 하나

  1. [...] 포스트 Node.js, Express 및 Couchbase로 REST 기반 애플리케이션 빌드하기 첫 번째 등장 Couchbase [...]

댓글 남기기

카우치베이스 카펠라를 시작할 준비가 되셨나요?

구축 시작

개발자 포털에서 NoSQL을 살펴보고, 리소스를 찾아보고, 튜토리얼을 시작하세요.

카펠라 무료 사용

클릭 몇 번으로 Couchbase를 직접 체험해 보세요. Capella DBaaS는 가장 쉽고 빠르게 시작할 수 있는 방법입니다.

연락하기

카우치베이스 제품에 대해 자세히 알고 싶으신가요? 저희가 도와드리겠습니다.