RESTful API 與 API 文件撰寫
Restful簡介
一種設計API的風格,而非標準 https://zh.wikipedia.org/wiki/REST
swagger簡介
一個把API說明清楚的方式
swagger有三個服務,editor,codegen,swagger ui
使用swagger editor 並開啟localhost cors
因沒開啟的話,位於遠端網頁的 swagger editor 無法發送測試
app.use('*', function(req, res, next) {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET, PUT, POST, DELETE, OPTIONS');
res.header('Access-Control-Allow-Headers', 'Accept, Origin, Content-Type');
res.header('Access-Control-Allow-Credentials', 'true');
next();
});將上面這段加到code的最上面即可
開始編寫yaml語言
yaml子項目會後退空兩格,陣列使用
-表示
可以看到範例,接著我們把它清空,開始編寫自己的版本
最基本的型態
其中最上面指的是使用swagger的版本,目前固定是2.0.0
中間部分等於是指定API server的位置,意思為http:localhost:3000/
再來我們會開始往paths裡面寫api
GET 簡單範本
parameters 的 in 可放的參數 "query", "header", "path", "formData" or "body".
在express中使用req.params取得url中使http://localhost:3000/getUser/123
使用req.query取得http://localhost:3000/getUser?id=123
GET 方法的完整範例
server.js
yaml
Post
你可能看過$ref: '#/definitions/test1',之後把test1另外定義,但個人感覺此種寫法比較分散,於是此處不用此種寫法
注意:修改yaml後記得把Try this operation重新開啟才會更新
Try this operation重新開啟才會更新先定義post type
或是
路由
server.js
最後加上PUT與DELETE方法
server.js
yaml
Last updated
Was this helpful?