Egg.js(二)GETとPOSTリクエスト
8609 ワード
これを見る前に、ドキュメントを読む必要があります.https://eggjs.org/zh-cn/basics/router.html https://eggjs.org/zh-cn/basics/controller.htmlここで私がやったのは、ドキュメントの運搬業者が自分のニーズに合わせて整理しただけです.前のノードでjsシリーズブログで使われているExpressですが、今回はEggを使います.jsの後は明らかに簡潔になった.
パラメータ取得方法1:
module.exports = HomeController; ルート:
パラメータ取得方式2:
ここでのGETとPOSTリクエストは実は何もありませんが、主にExpressとの違いに注意してください.全体的に使うのは本当に簡単だと思います.
GETリクエスト
パラメータ取得方法1:
'use strict';
const Controller = require('egg').Controller;
class HomeController extends Controller {
async query() {
const { ctx } = this;
ctx.body = {
query: ctx.query,
id: ctx.query.id,
data: ctx.query.data
}
// http://localhost:7001/query?id=2&data=aa
// {
// "query": {
// "id": "2",
// "data": "aa"
// },
// "id": "2",
// "data": "aa"
// }
}
}
module.exports = HomeController; ルート:
'use strict';
/**
* @param {Egg.Application} app - egg application
*/
module.exports = app => {
const { router, controller } = app;
router.get('/query', controller.home.query);
};
パラメータ取得方式2:
async params() {
const { ctx } = this;
ctx.body = {
params: ctx.params,
id: ctx.params.id,
data: ctx.params.data
}
// http://localhost:7001/params/2/aa
// {
// "params": {
// "id": "2",
// "data": "aa"
// },
// "id": "2",
// "data": "aa"
// }
};
router.get('/params/:id/:data', controller.home.params);
POSTリクエスト
async post() {
const { ctx } = this;
ctx.body = {
post: ctx.request.body,
id: ctx.request.body.id,
data: ctx.request.body.data
}
// http://localhost:7001/post
// {
// "post": {
// "id": "2",
// "data": "aa"
// },
// "id": "2",
// "data": "aa"
// }
};
router.post('/post', controller.home.post);
ここでのGETとPOSTリクエストは実は何もありませんが、主にExpressとの違いに注意してください.全体的に使うのは本当に簡単だと思います.