基本介紹

教學目標

透過 express 套件進行 API 參數傳遞。

  1. Path 參數傳遞
  2. Query 參數傳遞
  3. Body 參數傳遞

前置作業

  1. 完成 Node.js 套件安裝與設置。
  2. 新增程式碼檔案,命名為 server.js。

套件安裝

1
2
$ npm install express --save
$ npm install body-parser --save

使用教學

初始伺服器

1
2
3
var express = require('express'); 

var app = express();

進階設定

1
2
3
4
var body_parser = require('body-parser');

app.use(body_parser.json());
app.use(body_parser.urlencoded({ extended: true }));

路徑設定

1
2
3
var router = express.Router();

app.use('/api/v1', router);

資料設定

1
var user = ["leoyeh"];

Path 參數傳遞

1
2
3
4
router.get('/user/:id', function(req, res){
var id = parseInt(req.param.id) - 1;
res.send(user[id]);
});

ex: HTTP/1.1 GET http://127.0.0.1/api/v1/user/1

Query 參數傳遞

1
2
3
4
router.get('/user', function(req, res){
var id = parseInt(req.query.id) - 1;
res.send(user[id]);
});

ex: HTTP/1.1 GET http://127.0.0.1/api/v1/user?id=1

Body 參數傳遞

必需搭配進行進階設定,並且不適用 HTTP 的 GET 方法。

1
2
3
4
router.post('/user', function(req, res){
var id = parseInt(req.body.id) - 1;
res.send(user[id]);
});

ex: HTTP/1.1 POST http://127.0.0.1/api/v1/user

1
2
3
{
id: 1
}

設定伺服器

1
2
3
var port = process.env.PORT || 8080;

app.listen(port);

啟動伺服器

1
$ sudo PORT=80 node server.js

相關資源