koa中使用axios后无法传递数据给前端
- 外面的123能正常收到,但是在axio中我使用ctx.body返回数据显示ctx.body为undefined
router.post("/", async ctx => {
// console.log(wxcode);
// ctx.body = '123'
axios.get(wxAPI).then(async response => {
const token = jwt.creatToken({
openid: response.data.openid,
session_key: response.data.session_key
});
ctx.body = '345'
})
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
应该是因为没有
await axios.get
吧要在axios前加个await,否则无法传回前端数据,还有一个坑,如果在.then(async res={ await doing1;ctx.body=2 })里面(doing)操作数据库又使用了一层await,那么会继续无法返回ctx.body,最后我是在axios前面添加了await并把里面的ctx.body放在操作数据库之前才成功返回。