JSON 서버를 사용한 가짜 API
개발자로서 우리는 데이터를 가져올 빠른 백엔드를 원합니다. 실제 API 대신 우리는 단지 가지고 놀 수 있는 가짜 데이터를 원할 뿐입니다. 이유가 무엇이든 가짜 API는 개발 중에 유용합니다.
이를 위해 json-server라는 패키지를 사용할 것입니다.
빠른 서버를 설정하고 json-server와 함께 제공되는 몇 가지 멋진 기능을 살펴보겠습니다. 페이지 매김 및 필터링과 같은 더 많은 기능이 포함되어 있지만 가장 많이 사용하는 기능은 다음과 같습니다.
언제나처럼 documentation 을 파헤칠 수 있습니다.
다음은 source 입니다.
기본 서버
먼저 프로젝트에서
package.json
파일을 초기화합니다. . .mkdir fake-api
cd fake-api
npm init -y
Note: With the -y flag we are going to skip the prompt process.
. . . 그리고 json-server 설치
npm install json-server
데이터가 서버처럼 저장될
db.json
파일을 생성할 것입니다.{
"songs": [
{
"title": "Africa",
"band": "Toto",
},
{
"title": "Fkj",
"band": "Moments",
}
]
}
package.json
파일에서 다음 스크립트를 추가할 것입니다.여기서 우리가 하는 일은
db.json
파일에서 포트 3001에서 호스팅되는 변경 사항을 감시하는 것뿐입니다."json": "json-server --watch db.json --port 3001"
이제
npm run json
를 실행하면 서버가 실행 중입니다.무작위 데이터 생성
index.js 파일에서 임의의 사용자를 생성할 것입니다.
let names = ['Mary', 'John', 'Mike', 'Paul', 'Anna', 'Chris'];
let ages = [34, 56, 12, 22, 24, 54];
module.exports = () => {
const data = { users: [] };
for (let i = 0; i < 10; i++) {
let randomName = names[Math.floor(Math.random() * names.length)];
let randomAges = ages[Math.floor(Math.random() * ages.length)];
data.users.push({ id: i, name: `${randomName}`, age: `${randomAges}` });
}
return data;
}
스크립트는 다음과 같습니다.
"db": "json-server --watch index.js --port 3002"
그리고 다시
npm run db
를 실행하면 또 다른 서버가 생깁니다.맞춤 경로
가짜 API를 구축할 때 엔드포인트가 실제 사례 시나리오를 모방하기를 원하는 경우가 많습니다.
우리는 URL이 다음과 같기를 원할 수 있습니다.
http://localhost:3004/rock/songs
http://localhost:3004/rock/bands
http://localhost:3004/classical/pieces
http://localhost:3004/classical/artists
그래서 우리는 이것을 어떻게 합니까?
우리
db.json
는 일반적인 JSON 형식을 갖습니다.{
"rock_songs": [
{
"title": "Africa",
"band": "Toto"
},
{
"title": "Fkj",
"band": "Moments"
}
],
"rock_bands": [
{
"name": "Toto"
},
{
"name": "Boston"
}
],
"classical_pieces": [
{
"title": "Prelude in C Major"
},
{
"tilte": "Toccata and fugue in d minor"
}
],
"classical_artists": [
{
"name": "Alexander Scriabin"
},
{
"name": "Johann Sebastian Bach"
}
]
}
그런 다음 다음을 사용하여
routes.json
를 생성합니다.{
"/": "/",
"/rock/songs": "/rock_songs",
"/rock/bands": "/rock_bands",
"/classical/pieces": "/classical_pieces",
"/classical/artists": "/classical_artists"
}
왼쪽에는 엔드포인트의 모양이 표시되고 오른쪽에는
db.json
파일의 해당 배열이 표시됩니다.우리는 스크립트를 조정할 것입니다. . .
"custom:routes": "json-server db.json --routes routes.json --port 3003"
. . .
npm run custom:routes
를 실행하면 사용자 지정 끝점을 얻습니다.Reference
이 문제에 관하여(JSON 서버를 사용한 가짜 API), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/john2220/fake-api-with-json-server-2f27텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)