fiddler怎样能捕获requireJS依赖模块
首先通过下图大体了解下Fiddler等代理工具的工作原理:
【fiddler怎样能捕获requireJS依赖模块】
然后,列几个代理工作常识:原始请求由浏览器发出(RequireJS的依赖模块也是如此)代理是截获了原始请求,重新模拟请求发送给Web Server代理截获请求可以将请求头和内容修改代理拿到Web Server的响应后也可以对响应头和内容进行修改最后响应浏览器的是代理下面开始分析题主的意图:1. 假设main.js包含子模块index,如果题主想在浏览器请求main.js时想知道它包含哪些子模块,那就在上图⑦中可以拿到main.js的内容,然后通过解析AMD规范可以拿到main.js依赖的子模块(解析方法可以用正则表达式,也可以通过js parser拿到AST然后遍历require方法的第一个参数,常用的js parser有Esprima 或 army8735/homunculus · GitHub)2. 如果题主是真正想“捕获子模块”,其实更简单了,因为子模块的请求也是浏览器发出来的,其实过程是:浏览器请求main.js =\u0026gt; 浏览器执行main.js =\u0026gt; 执行到require方法时发送子模块请求。所以题主可以在浏览器发送子模块请求时在上图第②步可以获取请求头得到子模块的路径如:http://example.com/index.js,这时就相当于捕获了子模块。以上。
■网友
谢谢你的回答!我还是有疑问,如果在捕获列表里没有出现index.js是无法代理的?我今天第一次用手机代理,访问测试地址,确实补捕获目标路径。如图1:
此时,我希望接下去通过本地代理文件的方式替换这个路径。
但是,当我第二次访问测试地址时,左边的捕获列表中没有出现图1中的地址,怎么回事呢?这也导致我无法替换这个路径。
推荐阅读
- 聪明人养花,这3种“花”怎样也要养一盆,每年能省不少医药费
- 互联网怎样解决“家政服务上门速度慢”的问题
- 怎样看待从1月8号起,QQ钱包开始提现收费
- 银行it人怎样转型
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 怎样进入通信行业
- 怎样评价扶他柠檬茶的小说《云养汉》的结尾
- 怎样成为一名合格的Python程序员?
- 怎样评价华为、诺基亚、中兴中标中国移动高端路由交换设备扩容集采
- 怎样评价类似前橙会、百老汇、南极圈这样类型的离职帮抱团,对企业的积极意义和消极意义
