拦截器中的 Angular http 请求时间

1 javascript angular-http-interceptors google-chrome-console angular

我正在制作一个拦截器来记录我的 http 请求。

到目前为止,一切都很好,一切都按预期工作。

我现在想要的是获取执行请求所需的时间。

我以为我可以做这样的事情

const start = Date.now();
return next
  .handle(req)
  .map(res => {
    console.log('took ' + (Date.now() - start) + 'ms');
    return res;
  })
Run Code Online (Sandbox Code Playgroud)

}

但是控制台显示1到2ms,而网络显示超过50ms......我认为我应该在创建请求时创建起始值,但我不知道如何。

任何解决方案?

PS:我的 linting 配置禁止我使用console.time()

Sac*_*aka 5

用于performance.now()以毫秒为单位测量持续时间

var start = performance.now(); 

return next
  .handle(req)
  .map(res => {
    console.log('took ' + (performance.now() - start) + 'ms');
    return res;
  })
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请检查