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

本文继续学习 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抓紧创作!

微信微信 支付宝支付宝

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

声明:
1. 本站所有文章教程及资源素材均来源于网络与用户分享或为本站原创,仅限用于学习和研究。
2. 如果内容损害你的权益请联系客服QQ:1642748312给予处理。
码云笔记 » 17.Egg.js教程-Egg.js 的 Extend-request

发表回复

IT互联网行业相关广告投放 更专业 更精准

立即查看 联系我们