Koa正在执行两次每个请求?
问题描述:
有没有任何理由为什么Koa被执行两次每个请求?Koa正在执行两次每个请求?
const Koa = require('koa')
const app = new Koa()
const index = async(ctx, next) => {
console.log('Hello world!')
await next()
ctx.body = 'Hello world!'
}
app.use(index);
app.listen(3000)
在我的终端,我得到:
Hello world!
Hello world!
任何想法?
答
有两个原因,这可能发生:
首先IST - 如在浏览器也火了favicon.ico的 第二请求的意见已经提到:有些浏览器做了prefentching,所以之前,你甚至打返回键,它们在进入时预取URL。
const Koa = require('koa')
const app = new Koa()
const index = async(ctx, next) => {
console.log('URL --> ' + ctx.request.url); // This logs out the requested route
console.log('Hello world!')
await next()
ctx.body = 'Hello world!'
}
app.use(index);
app.listen(3000)
我在代码中添加了一行代码,以便您可以查看浏览器要求的路由。这可能有助于找出问题的原因。
+0
感谢您的回答! – laukok
猜:'/ favicon.ico' – robertklep
@robertklep我该如何解决这个问题? – laukok
为'/ favicon.ico'添加一个处理程序。或者这:https://*.com/a/13416784 – robertklep