node.js - 一段简单的 Generator 代码,但结果却不是预期的那样,求指点迷津
怪我咯
怪我咯 2017-04-17 13:07:01
0
2
211

今天学用 koa.js 写个简单的 demo,代码如下:

import koa from 'koa'

let App = koa()

App.use(function *(next) {
  const timestampBefore = new Date().getTime()
  yield next
  const timestampAfter = new Date().getTime()
  console.log(`Process Time: ${timestampBefore - timestampAfter}`)
})

App.use(function *() {
  this.body = 'Hello from koa'
})

App.listen(4000)

export default App

很简单的一段代码,按照许多教程里描述的,应该是每请求一次就打印一条该请求的处理时间,但是我运行之后却总是一次打印两条请求的处理时间,这两个时间或者相同或者不同并没有规律,更奇怪的是还会出现负数……

这我就想不明白了,谁能给我解释一下里面的道理?谢谢~

怪我咯
怪我咯

走同样的路,发现不同的人生

모든 응답(2)
巴扎黑

我猜你请求的时候用的是 Chrome 浏览器对吧?如果你打开浏览器的开发者工具观察一下 Network 里的请求,应该可以看到的确是两个请求(说不定更多),其中有一个是去请求 favicon.ico 文件的,这就是你看到一次打印两条请求的原因。

至于为什么是负的,如果我没猜错的话如果你重启 server 再试一次,最开始的请求应该不会是负数,至于后面嘛……反正也是乱猜的,不误导你了吧,反正也没啥大不了了。

刘奇
  1. 请求两次是因为请求了 favicon.ico

  2. 负数是因为你减反了吧。。。 timestampAfter - timestampBefore

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!