【问题标题】:How to measure how much time request take in NodeJS如何测量 NodeJS 中请求所花费的时间
【发布时间】:2020-05-10 20:48:07
【问题描述】:
const axios = require("axios");

axios.get('url')
  .then(response => {
     console.log(response)
  })
  .catch(err => console.log(err))

我如何衡量网站返回整页需要多少时间?

【问题讨论】:

    标签: node.js python-requests axios


    【解决方案1】:

    您可以使用performance.now() 来测量开始和完成请求之间的时间。

    const axios = require("axios");
    const { performance } = require('perf_hooks');
    
    let time = performance.now();
    
    axios.get('url')
      .then(response => {
         console.log(response)
         console.log(`${(performance.now() - time) / 1000} seconds`);
      })
      .catch(err => console.log(err))
    

    【讨论】:

      【解决方案2】:

      此外,您可以轻松地使用axios.interceptors 获取请求开始时和响应到达后的时间,并将其添加为axios.create 的一部分。 请求:

      axios.interceptors.request.use(function (config) {
        config.timeData = { startTime: new Date()}
        return config;
      }, function (error) {
        return Promise.reject(error);
      });
      

      对于回应:

      axios.interceptors.response.use(function (response) {
        response.config.timeData.endTime = new Date()
        return response;
      }, function (error) {
        return Promise.reject(error);
      });
      

      您可以在拦截器上查看更多信息here

      【讨论】:

        猜你喜欢
        • 2016-03-26
        • 2023-03-19
        • 1970-01-01
        • 2011-06-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-23
        相关资源
        最近更新 更多