anyproxy 获取网络请求数据,获取并保存流量大小,感觉数据大小不对

6tdlim6h  于 2023-03-19  发布在  其他
关注(0)|答案(2)|浏览(174)

我是利用规则 rule.js保存的请求、返回结果数据大小

if (requestDetail.url.indexOf('https://*********') === 0) {
      if (requestDetail.url.indexOf("https") === 0) {
        url = requestDetail.url;
        requestLength = requestDetail.requestData.length;
        // requestLength = requestDetail.length;
       console.info("requestLength:");
       console.info(requestLength);
        return null;
      }
  },
*beforeSendResponse(requestDetail, responseDetail) {
      if (requestDetail.url.indexOf("https") === 0) {
          responseLength = responseDetail.response.body.length;
          console.info("responseLength:");
          console.info(responseLength);
      return null;
    }
  },
    }

但是实际保存的数据大小和通过其他代理工具如charles抓到同一个网络请求数据大小不一致,不知道是不是anyproxy保存的数据大小信息没有包含header内容? 还是我取数据的方法不对?

csga3l58

csga3l581#

@wishchen
对于request的数据统计应该就是原始的请求,但是对于resposne,由于AnyProxy在将数据传递给rule时已经进行了解压缩,因此比实际要大。 你可以通过AnyProxy在header中设置的字段 x-anyproxy-origin-content-length 来获得原始返回的大小

koaltpgm

koaltpgm2#

@codingfishman 好的,试了试和我之前取的大部分结果是一致,后边我再试其他工具,做下对比。 3ks

相关问题