用koa获取到数据了,但是无法返回给前端?
//router.js
//controller.js
//model.js
省去了一些不必要的代码,我现在在浏览器中打开localhost/user,在终端里面能看到从数据库中取到的测试数据:
但是页面上却是显示的404。跪求大神指导。。
------------------update------------------
应该是mongoose异步去数据库取数据的原因,但是在model.js里我已经用了promise了,还是先返回了。之所以状态码是404,貌似是因为koa封装ctx的时候response里默认了状态码是404,而并不是真的没有找到请求。
刚用了一下koa-mongo,但是把路由抽出去不放在app.js后又不能正确返回了,感觉也是异步的问题。。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
router里需要等待Promise的返回,改下代码试试
然后
articleFn
这个方法里ArticleModel
前面加上return
这个问题应该是: 查询数据的行为是异步的, 我们需要在查询数据的代码前加一个await, 不然代码走到这里,没有得到异步操作的返回结果,所以默认就返回了404!请看代码:
别的没看懂。我就看懂了。你代码里面没有user啊。所以404啊
把你的数据放到this.body里面啊
我也是同样的问题,你的问题解决了吗
koa2 前端post请求时,数据都能更新到数据库了,为什么响应头确实404
我遇到类似的问题,用Promise包装一下就可以了