Важный
Просмотр документации Beta V1 - используется, но ожидает нарушения изменений. Для стабильной версии см. Здесь
Привет! Использование React, Vue или Astro? Проверьте мой новый проект Mistcss, чтобы написать на 50% меньше кода.
npm install json-server
Создайте файл db.json
или db.json5
{
"posts" : [
{ "id" : " 1 " , "title" : " a title " , "views" : 100 },
{ "id" : " 2 " , "title" : " another title " , "views" : 200 }
],
"comments" : [
{ "id" : " 1 " , "text" : " a comment about post 1 " , "postId" : " 1 " },
{ "id" : " 2 " , "text" : " another comment about post 1 " , "postId" : " 1 " }
],
"profile" : {
"name" : " typicode "
}
}
{
posts : [
{ id : '1' , title : 'a title' , views : 100 } ,
{ id : '2' , title : 'another title' , views : 200 } ,
] ,
comments : [
{ id : '1' , text : 'a comment about post 1' , postId : '1' } ,
{ id : '2' , text : 'another comment about post 1' , postId : '1' } ,
] ,
profile : {
name : 'typicode' ,
} ,
}
Вы можете прочитать больше о формате JSON5 здесь.
Передайте его в CLI JSON Server
$ npx json-server db.json
Получите API отдыха
$ curl http://localhost:3000/posts/1
{
" id " : " 1 " ,
" title " : " a title " ,
" views " : 100
}
Запустите json-server --help
для списка вариантов
Спонсоры |
---|
Спонсоры |
---|
Спонсоры | |
---|---|
Станьте спонсором и сделайте логотип вашей компании здесь
Примечание
Этот проект использует лицензию справедливого источника. Только организации с 3+ пользователями любезно просят внести небольшую сумму через спонсора спонсорства для использования. Эта лицензия помогает сохранить проект устойчивым и здоровым, принося пользу всем.
Для получения дополнительной информации, часто задаваемых вопросов и обоснования этого, посетите https://fair.io/.
На основании примера db.json
, вы получите следующие маршруты:
GET /posts
GET /posts/:id
POST /posts
PUT /posts/:id
PATCH /posts/:id
DELETE /posts/:id
# Same for comments
GET /profile
PUT /profile
PATCH /profile
→ ==
lt
→ <
lte
→ <=
gt
→ >
gte
→ >=
ne
→ !=
GET /posts?views_gt=9000
start
end
limit
GET /posts?_start=10&_end=20
GET /posts?_start=10&_limit=10
page
per_page
(по умолчанию = 10) GET /posts?_page=1&_per_page=25
_sort=f1,f2
GET /posts?_sort=id,-views
xyz..
xyz[i]...
GET /foo?a.b=bar
GET /foo?x.y_lt=100
GET /foo?arr[0]=bar
GET /posts?_embed=comments
GET /comments?_embed=post
DELETE /posts/1
DELETE /posts/1?_dependent=comments
Если вы создаете каталог ./public
, JSON Server будет обслуживать свой контент в дополнение к API REST.
Вы также можете добавить пользовательские каталоги, используя -s/--static
опцию.
json-server -s ./static
json-server -s ./static -s ./node_modules
id
всегда является строкой и будет сгенерирован для вас, если отсутствует_per_page
с _page
вместо _limit
для страницNetwork tab > throtling
для задержки запросов вместо --delay
CLI опция