5분 안에 Nodejs로 CRUD용 가짜 REST API 서버 구축 및 배포

*bloggu.io을 사용하여 게시된 기사입니다. 무료로 사용해 보세요.*React와의 최근 인터뷰에서 저는 CRUD 작업을 수행하기 위해 API를 구축해야 할 필요성을 느꼈습니다.

React 애플리케이션에서 가짜 데이터를 직접 모의하는 것이 가능하지만 원격 서버의 요청을 처리하는 방법을 보여주는 아이디어는 매력적입니다. 하지만 어떻게 빨리 만들 수 있습니까?

좋은 API 서버를 설정하고 배포하는 데 문자 그대로 몇 시간이 걸릴 수 있습니다. 글쎄,별로. CRUD 작업을 위한 빠른 가짜 REST API 서버를 구축하는 방법을 알아보겠습니다.

## 요구 사항

컴퓨터에 Nodejs이 설치되어 있고 Heroku 계정도 있어야 합니다.

설정



작업 디렉토리를 만들고 Nodejs 프로젝트를 초기화해 봅시다.

mkdir fake-server && cd fake-server
yarn init

package.json 의 일부 항목에 대해 몇 가지 질문을 받게 됩니다. 다음은 이 프로젝트의 package.json 구조입니다.

{
  "name": "fake-server",
  "version": "1.0.0",
  "license": "MIT",
  "main": "server.js",
  "scripts": {
    "start": "node server.js"
  }
}


프로젝트에 json-server를 설치합시다.

yarn add json-server


엄청난! 이제 server.js 파일 쓰기로 이동할 수 있습니다.

서버 쓰기


server.js에는 서버를 실행하고 json-server 미들웨어를 로드하는 논리가 포함됩니다.

const jsonServer = require('json-server');
const server = jsonServer.create();
const router = jsonServer.router('db.json'); // <== Will be created later
const middlewares = jsonServer.defaults();
const port = process.env.PORT || 3200; // <== You can change the port

server.use(middlewares);
server.use(router);

server.listen(port);


다음으로 db.json 파일을 만들어야 합니다. JSON 데이터가 포함된 파일입니다. json-server는 JSON 파일 구조로 리소스에 대한 경로와 스키마를 자동으로 생성한 다음 리소스에 대한 CRUD 작업을 허용합니다.

이 기사의 데이터는 Mockaroo에서 가져왔습니다.
db.json의 구조는 이렇게 나옵니다.

{
  "resources1": [
     // JSON data
  ],
  "resources2": [
     // JSON data
  ]
}


다음은 프로젝트에 대한 사용자 데이터의 예입니다.

{
  "users": [
    {
      "id": 1,
      "name": "Aurelie Cheyne",
      "email": "[email protected]",
      "city": "Male",
      "username": "acheyne0",
      "website": "Redhold"
    },
    {
      "id": 2,
      "name": "Dael Leppo",
      "email": "[email protected]",
      "city": "Non-binary",
      "username": "dleppo1",
      "website": "Cardify"
    },
    {
      "id": 3,
      "name": "Elnar Brahm",
      "email": "[email protected]",
      "city": "Female",
      "username": "ebrahm2",
      "website": "Matsoft"
    },
    {
      "id": 4,
      "name": "Shelby Feaver",
      "email": "[email protected]",
      "city": "Female",
      "username": "sfeaver3",
      "website": "Cardguard"
    },
    {
      "id": 5,
      "name": "Anthe Ivanishev",
      "email": "[email protected]",
      "city": "Female",
      "username": "aivanishev4",
      "website": "Bitchip"
    },
    {
      "id": 6,
      "name": "Shermy Clinton",
      "email": "[email protected]",
      "city": "Male",
      "username": "sclinton5",
      "website": "Fixflex"
    },
    {
      "id": 7,
      "name": "Alma Romaint",
      "email": "[email protected]",
      "city": "Male",
      "username": "aromaint6",
      "website": "Keylex"
    }
  ]
}

db.json가 작성되었으므로 이제 서버를 실행할 수 있습니다.

yarn start


서버는 http://localhost:3200에서 사용할 수 있습니다.



그리고 http://localhost:3200/users/에서 users 리소스를 확인하겠습니다.


데이터를 사용할 수 있지만 배포하려고 합니다. 흥미롭게도 읽기 전용 작업만 수행하는 경우 배포가 전혀 필요하지 않을 수 있습니다. 코드를 Github에 푸시하면 데이터가 자동으로 사용 가능합니다: https://my-json-server.typicode.com/your_github_username/project_name .
예를 들어, 이 미니 프로젝트here의 저장소에 대한 원격 서버를 찾을 수 있습니다.

전체 CRUD를 사용할 수 있지만 경고: 쓰기 작업을 실행할 때 데이터가 유지되지 않습니다. 이를 방지하기 위해 Heroku에 배포할 수 있습니다.

Heroku에 배포



Heroku에 배포하는 것은 빠르고 간단한 프로세스입니다. 그 전에 .gitignore 파일이 있는지 확인하십시오.

node_modules


그런 다음 로그인을 확인하십시오.

heroku login


그런 다음 새 프로젝트를 만들고 코드를 푸시합니다.

heroku create
heroku buildpacks:set heroku/nodejs


코드를 Heroku에 푸시해 보겠습니다.

git push heroku master


그리고 애플리케이션을 준비하고 실행할 수 있습니다. 지속적인 CRUD 작업을 수행할 수도 있습니다.🤟‍

여기에서 이 코드project를 찾아 급한 경우 템플릿으로 직접 사용할 수 있습니다.😁

무언가를 추가하고 싶거나 의견이 있으십니까? 댓글 섹션에서 이에 대해 논의해 보겠습니다.

좋은 웹페이지 즐겨찾기