Chrome请求比其他浏览器请求花费的时间更长

时间:2018-07-23 22:12:21

标签: javascript google-chrome firefox vuejs2 axios

我网站的一位用户注意到无限滚动功能的加载时间严重延迟,该无限滚动功能向我的API发出了GET请求。在测试时,它似乎只发生在Chrome和Opera中,其他浏览器则提供了近乎无缝的体验。

因此,在进行了一些测试之后,我决定进行一些时间记录(对不起,由于声誉太低,我无法在此处发布内嵌图像): Firefox time logs

Chrome time logs 这些日志来自相同的调用,您可以看到chrome大约需要3000毫秒,而firefox大约需要90毫秒。 IE / Edge与Firefox具有相同的性能。

为了进一步说明这个问题,“网络”标签似乎正确报告了毫秒(某些情况下大约100毫秒,但是没有3000毫秒): chrome network tab

现在我要调用的实际代码是

loadMore() {
      console.time('start load');
     //some extra stuff here
        console.timeEnd('start load');
        console.time('state api call');
        this.$APIService.getCards(this.deckId, this.page, this.searchInput, this.lastId)
          .then(res => {
            console.timeEnd('actual call');
            console.timeEnd('state api call');
            //some more stuff here
    })
}

“ this。$ APIService.getCards”调用只是我的apihandler:

getCards (deckId, page, searchInput,lastId) {
    console.time('actual call');
    return Api().get('cards?deckId=' + deckId + '&lastId='+lastId + '&search='+ searchInput)
  },

其中“ Api()”是我的axios对象:

 axios.create({
    withCredentials: true,
    baseURL: baseURL
  })

要注意的另一件事是,我的服务器仅在延迟后才收到请求,因此这与网络标签相对应,表明它仅花费大约100毫秒。

那么,有谁知道为什么会这样吗?如您所见,我实际上是在请求之前开始记录时间,并在收到结果后立即结束记录。为什么只在Chrome中执行通话会有延迟?

谢谢!

0 个答案:

没有答案