在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ koa使用await無效

koa使用await無效

function timeout(ms) {
  return new Promise(resolve => {
    setTimeout(resolve, ms);
  });
}

app.use(async (ctx, next) => {
  await timeout(1000);
  //為什么下面的代碼沒有執(zhí)行,前端就得到了返回
  ctx.status = 200;
  ctx.body = { success: true };
});

代碼如上,使用 await timeout(1000)模擬數(shù)據(jù)庫等異步操作
當(dāng)有一個(gè)請求過來的時(shí)候, await timeout之后的代碼還沒有執(zhí)行前端就會(huì)得到返回404
然后執(zhí)行 ctx.status = 200;的時(shí)候會(huì)報(bào)錯(cuò)AssertionError [ERR_ASSERTION]: headers have already been sent,
把 await timeout去掉之后,前端就能得到正確的返回。
請問這個(gè)什么原因?如何解決?

回答
編輯回答
醉淸風(fēng)

我發(fā)現(xiàn)是我自己寫的logger里面沒有用await

2018年8月15日 12:29