lack-proxy 动态设置进程全局 HTTP 代理
lack-proxy 用于给 Node 程序设置全局 HTTP 代理,可以将 Node 进程里面的指定 TCP 请求代理到 Whistle 等抓包调试代理。
安装
npm i --save-dev lack-proxy
使用
建议在程序入口设置
const lack = require('lack-proxy');
设置全局HTTP代理:
lack.proxy({ host: '127.0.0.1', port: '8899', // allowlist: ['ke.qq.com', '*.ke.qq.com'], // blocklist: ['fudao.qq.com', '*.fudao.qq.com'], // filterRequest: (options, isSocket) => { // return true || false; // }, // 可选,精确过滤请求 // servername, // 可选,参见Node的HTTPS文档,设置SNI // headers, // 可选,设置代理请求头 });
程序里面的所有web请求(HTTP、HTTPS、WebSocket)都会代理到本地的 8899
端口的代理服务
根据请求参数动态设置
lack.proxy((options) => { // 根据请求options动态设置代理 return { host: '127.0.0.1', port: '8899', headers: options.headers, // allowlist: ['ke.qq.com', '*.ke.qq.com'], // blocklist: ['fudao.qq.com', '*.fudao.qq.com'], // filterRequest: (options, isSocket) => { // return true || false; // }, // 可选,精确过滤请求 // servername, // 可选,参见Node的HTTPS文档,设置SNI }; });
有关例子可以参见测试用例。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论