export async function getPlaces(ctx, next) {
const { error, data } = await PlaceModel.getPlaces(ctx.query);
console.log(error, data);
if (error) {
return ctx.throw(422, error);
}
ctx.body = data;
}
Koa每次都发404状态和空的身体,我做错了什么?
4条答案
按热度按时间kg7wmglp1#
看起来,
await
并没有真正“等待”,因此返回得太早(这会导致404错误)。其中一个原因可能是
PlaceModel.getPlaces(ctx.query)
没有返回一个承诺,所以它继续执行,而不等待getPlaces
的结果。w1e3prcc2#
我也遇到了这个问题,通过添加以下内容解决了这个问题:
ctx.status = 200;
正下方
ctx.body = data;
iibxawm43#
你必须把你的功能和路由器连接起来,这里有一个简单的例子:
ccgok5k54#
在我的情况下,而使用koa路由器,我忘记添加
正上方