루프백을 사용하는 방법에 대해 알아봅니다.
1. Loopback
루프백을 한마디로 설명하자면 다음과 같습니다.
LoopBack은 Node.js에서 API 및 마이크로 서비스를 구축하기 위한 플랫폼입니다.
또한 공식 문서에서 추가적으로 루프백에 대해 다음과 같이 설명하고 있습니다.
LoopBack은 Express를 기반으로하는 확장 성이 뛰어난 오픈 소스 Node.js 및 TypeScript 프레임 워크로, 데이터베이스 및 SOAP 또는 REST 서비스와 같은 백엔드 시스템으로 구성된 API 및 마이크로 서비스를 신속하게 작성할 수 있습니다.
아래 다이어그램은 어떻게 LoopBack이 들어오는 요청과 나가는 결과들 사이에 다리 역할을 하고 있는지 보여줍니다. 또한 루프백이 제공하는 다양한 기능들도 보여줍니다.
이 글을 작성하는 시점에서 최신 버전인 Loopback4를 사용하도록 하겠습니다. Loopback3은 현재 여전히 마이그레이션 중이며 몇몇 기능은 루프백 4에서 동작하지 않을 수 있습니다. 이러한 차이점에 대해선 별도로 다루지 않으며 이 글을 참고해 주시기 바랍니다.
2. LoopBack4 시작하기
루프백4는 NodeJs 버전 10 이상을 요구합니다. 미리 설치해 줍시다.
NodeJs를 설치하고 난 뒤 아래의 명령어를 통해 LoopBack4 CLI를 설치합니다.
> npm i -g @loopback/cli
이 LoobBack CLI 도구는 프로젝트를 스캐폴딩 하고 TypeScript 컴파일러를 구성하며 필요한 모든 종속성을 설치합니다. 이제 다음과 같이 명령어를 입력해 프로젝트를 생성합니다.
> lb4 app
옵션을 선택해 프로젝트를 구성합니다. 구성이 완료되면 만들어진 프로젝트 폴더로 이동해 루프백을 실행합니다.
> cd loopback
> npm start
정상적으로 실행되었는지 확인해보기 위해 http://localhost:3000/ping 로 이동합니다. "greeting":"Hello from LoopBack"이 포함된 json 응답이 보이면 정상적으로 실행된 것입니다.
3. 컨트롤러 추가하기.
이제 간단하게 새로운 컨트롤러를 추가해 봅시다. 일단 Ctrl + C를 눌러 실행 중인 루프백을 먼저 종료해 줍니다. 그런 뒤 다음 명령어를 통해 새로운 컨트롤러를 추가합니다.
> lb4 controller
안내에 따라 컨트롤러 이름을 정한 뒤 유형을 선택합니다. 예시에서는 빈 컨트롤러를 선택하였습니다.
이제 디렉터리에 우리가 생성한 컨트롤러가 추가된 것을 확인할 수 있습니다. .\src\controllers\hello.controller.ts 파일을 열어보세요.
// Uncomment these imports to begin using these cool features!
// import {inject} from '@loopback/context';
export class HelloController {
constructor() {}
}
빈 컨트롤러를 선택했기 때문에 아무런 동작을 하지 않습니다. 이제 여기에 hello에 대한 응답으로 "Hello world!"를 보내주도록 코드를 작성해 봅시다.
import { get } from "@loopback/rest";
export class HelloController {
@get("/hello")
hello(): string {
return "Hello world!";
}
}
이제 다시 루프백을 실행 후 http://localhost:3000/hello 로 이동합니다.
정상적으로 보이시나요? 이렇게 원하는 컨트롤러를 추가해줄 수 있습니다.
'Programming > Typescript' 카테고리의 다른 글
[Loopback] MongoDB 연결하기. (0) | 2020.11.12 |
---|---|
[LoopBack] 02. Loopback4와 Postgresql 연결하기 (0) | 2020.04.23 |
[Typescript] 02. 모듈 (0) | 2020.04.22 |
[Typescript] 01. Typescript란? - Typescript개발 준비 (0) | 2020.04.20 |