17.Egg.js教程-Egg.js 的 Extend-request

目录
文章目录隐藏
  1. 开发前的准备工作
  2. request 对象扩展 token 属性
  3. 使用 REST Client 进行测试

本文继续学习 Egg.js 中 Request 对象的扩展,Request 中的扩展一般是扩展的属性。比如扩展 Request 中的一个属性,通过属性直接得到请求头中的 token 属性。

开发前的准备工作

我们新写一个方法,用来获取请求头中的token属性。所以我们在/app/controller/mybj.js中添加一个方法。

async newRequest(){
  const { ctx } = this;
  const token = ctx.request.token
  ctx.body = {
    status:200,
    body:token
  }
}

然后再到router.js中设置路由。

router.post("/newRequest", controller.mybj.newRequest);

request 对象扩展 token 属性

Egg.js 对 Request 的扩展也需要在/app/extend文件夹下,新建一个request.js文件,然后在这个文件里写扩展属性。

module.exports = {
  get token() {
    console.log("token", this.get("token"));
    return this.get("token");
  },
};

使用 REST Client 进行测试

写完上面的代码之后,就可以使用REST Client 插件进行测试了。编写测试代码如下。

POST http://127.0.0.1:7001/newRequest
Content-Type: application/json
token: 'mybj'

{
    "name":"小红",
    "age":18
}

在点击send Request按钮,在 VSCdoe 控制台和请求后返回的数据中,就可以看到token了。这样一个简单的 Request 扩展就完成了。

「点点赞赏,手留余香」

0

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
码云笔记 » 17.Egg.js教程-Egg.js 的 Extend-request

发表回复