我正在使用 request npm 模块在我的程序中发出 http 请求。request 的默认行为似乎是它会尝试使用代理服务器,当在环境中定义时。
我正在多个开发人员使用的共享 unix 服务器中对此进行测试,他们不断更改代理设置。此外,我不需要代理,因为我只是直接连接局域网内的其他Web服务。
那么,有没有办法告诉“请求”不要使用代理选项,即使它是在环境中设置的?
在评论中归功于@mh-cbon。在这里编码以完成答案。
在启动 nodejs 之前清空配置的代理
HTTPS_PROXY="" node script.js
Run Code Online (Sandbox Code Playgroud)
或使用 NO_PROXY,禁用指定模式(或全部)的代理
NO_PROXY="*" node script.js
Run Code Online (Sandbox Code Playgroud)
或者,在您的节点 js 脚本中,在加载和使用请求模块之前执行上述操作。
// Disable proxy from being used by request module
process.env["NO_PROXY"]="";
// Then go on as per normal
const request = require("request")
... do stuff ..
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4382 次 |
| 最近记录: |