如何获取npm install下载Node.js模块时的全部URL列表?
获取npm install时模块下载URL的方法
方法1:通过npm verbose日志直接提取
执行npm install时添加--verbose参数,会输出包含所有模块下载请求的详细日志。可以将日志保存到文件后过滤关键内容:
- 执行命令:
npm install --verbose > npm_install.log - 过滤下载URL(Linux/macOS):
grep "GET" npm_install.log - 过滤下载URL(Windows命令行):
findstr "GET" npm_install.log
日志里的GET请求行就是模块的下载源URL。
方法2:开启npm的silly级日志
将npm日志级别设置为silly,会输出最详细的请求信息,包括每个模块的下载URL:
- 临时设置日志级别并执行安装:
npm install --loglevel silly - 或者先全局配置日志级别:
npm config set loglevel silly npm install npm config set loglevel info # 安装完成后改回默认级别
输出内容里的request to字段后跟着的就是下载URL。
方法3:系统网络抓包
用网络监控工具捕获npm发起的所有HTTP/HTTPS请求,直接获取下载URL:
- 用Wireshark:过滤HTTP请求,筛选源或目标为npm registry的流量
- 用tcpdump(Linux/macOS):执行
tcpdump -i any port 443 and host registry.npmjs.org,捕获和npm官方源的HTTPS请求 - 用Charles/Fiddler:设置代理后让npm走代理,即可在工具中看到所有请求URL
内容的提问来源于stack exchange,提问作者Karan
相关产品推荐
相关产品推荐

