有点没太明白楼主具体要做啥
为了提高网站性能,开发对页面请求做了优化
具体是做了啥优化?请求串行变并行、请求聚合(多个接口请求合并为单个)、请求数量缩减,还是?
有时候同样的请求会请求多次,领导让把所有页面的所有请求抓出来,做个对比。
要对比的是啥?同个页面优化前后的性能情况,还是不同页面之间请求数量的对比(后者个人觉得意义不大)?
对比的最终目的是啥?简单验证本次开发优化后效果是否有提升、提升多少?还是要建立长期监控机制,持续监控观测各个页面的请求速度,找出请求最慢或者页面 tti(可交互时间,详细可看 https://web.dev/i18n/zh/tti/ )最慢的 top10,进行治理?
然后针对楼主每个问题,也说下个人的一些想法:
1、怎么确定一个网站有多少页面
能看到源码的话就直接看源码里 route 路径数量,多少个 route 就多少个页面
2.用什么法子抓取每个页面下的请求,包括地址、请求头、请求体、大小、时间等要素
这里要区分下你这个抓取要求是抓你本地看实验室数据,还是要抓线上用户看大盘数据的。
如果是本地的,方法很多,前面提到的配置代理、直接 f12 等都可以。
如果是线上用户的,可以接入一些前端线上监控的 sdk 来直接实现。比如阿里云的 arms。
3、网页较多,自动化实现
如果是线下测试用,不上监控,可以通过 UI 自动化 +proxy 来做。UI 自动化逐个打开每个网页的 url,然后 proxy 捕获涉及的所有网络请求情况并保存本地。
如果是上监控,接入后直接看监控就行了。