如何从Axios获取响应时间 [英] How to get response times from Axios

查看:2301
本文介绍了如何从Axios获取响应时间的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

任何人都可以建议任何方法来获取Axios的响应时间吗?我发现了axios-timing,但我不太喜欢它(有争议,我知道).我只是想知道是否还有其他人找到了记录响应时间的好方法.

Can anyone suggest any ways to get response times from Axios? I've found axios-timing but I don't really like it (controversial, I know). I'm just wondering if anyone else has found some good ways to log response times.

推荐答案

您可以使用axios的拦截器概念.

You can use the interceptor concept of axios.

请求交互将设置开始时间

Request intercepor will set startTime

axios.interceptors.request.use(function (config) {

  config.metadata = { startTime: new Date()}
  return config;
}, function (error) {
  return Promise.reject(error);
});

响应拦截器将设置endTime&计算持续时间

Response interceptor will set endTime & calculate the duration

axios.interceptors.response.use(function (response) {

  response.config.metadata.endTime = new Date()
  response.duration = response.config.metadata.endTime - response.config.metadata.startTime
  return response;
}, function (error) {
  error.config.metadata.endTime = new Date();
  error.duration = error.config.metadata.endTime - error.config.metadata.startTime;
  return Promise.reject(error);
});

这篇关于如何从Axios获取响应时间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆