adonis-rest - 基於AdonisJs的Restful API基礎構件

adonis-rest

基於AdonisJs的Restful API基礎構件, AdonisJs中文網: https://adonis-china.orgjavascript

https://github.com/wxs77577/a...

file

安裝

  1. cnpm install --save adonis-restjava

準備

Tips: 請確保你的/app/Model/目錄裏有一些模型文件. 若是沒有的話能夠用 ./ace make:model News 來建立一個新聞模型git

/app/Http/routes.jsgithub

Route.put('/api/:resource', 'RestController.update') //可選
Route.resource('/api/:resource', 'RestController')

Create /app/Http/Controllers/RestController.jsnpm

'use strict'

const BaseRestController = require('adonis-rest')

class RestController  extends BaseRestController{

}

module.exports = RestController

就這樣,全部模型的Restful接口就能夠訪問了。api

文檔

Base uri: http://localhost:3333/api數組

請求方法 URL 描述
GET /news 獲取新聞列表
POST /news 獲取一條新聞
PUT/PATCH /news/:id 修改一條新聞
DELETE /news/:id 刪除一條新聞

GET /news

獲取全部新聞app

URL查詢參數

參數名 示例值 描述
pagination 1 獲取包含分頁信息的數據,不然獲取扁平數組,不過你仍然能夠經過headers來獲取分頁信息
query {"user_id": 1} 查詢條件,也能夠用 filterwhere
page 1 當前頁
perPage 10 每頁顯示數量,也能夠用 limit
offset 10 跳過數量,也能夠用 skip
fields id,title,created_at select的字段
orderBy id 排序,能夠用-id表示desc(降序)

Headers中的分頁信息字段

  • X-Pagination-Total-Countui

  • X-Pagination-Page-Countspa

  • X-Pagination-Current-Page

  • X-Pagination-Per-Page

query字段的格式

  • query={"created_at": "2017-07-07"}

  • query={"created_at": [">", "2017-07-07"]}<,<> 等等

  • query={"created_at": ["between", ["2017-07-01", "2017-07-31"]]}notBetween

  • query={"user_id": ["in", [1,2,3] ]}notIn

  • query={"user_id": ["raw", 'user_id IS NULL' ]}

有問題?

Issues裏面告訴我

相關文章
相關標籤/搜索