如何配置 node-fetch 以使用公司代理?
Posted
技术标签:
【中文标题】如何配置 node-fetch 以使用公司代理?【英文标题】:How to configure node-fetch to use the company proxy? 【发布时间】:2020-05-26 11:38:01 【问题描述】:我正在执行一个需要从第三方 api 获取结果的独立 nodejs 脚本(不涉及 Web 服务器)。该程序使用 'node-fetch' 来执行 fetch(url),我从命令行使用 node .\test.js
运行它。
当我连接到我们公司的网络时它会失败,但在直接互联网上工作正常。我已经在 npm 中配置了代理设置,可以看到 npm config ls
显示了代理和 https-proxy 的正确值。
所以问题是:
1.通过node运行test.js不会从npm中选择代理配置吗?
2. 如何确保fetch(url)
调用通过我们的代理?
提前致谢
【问题讨论】:
【参考方案1】:这对我有用,请尝试使用: https://github.com/TooTallNate/node-http-proxy-agent
形成的请求将与此类似:
fetch('accessUrl', agent: new HttpsProxyAgent('proxyHost:proxyPort'))
.then(function (res)
)
【讨论】:
如果身份验证呢? @PeterPalmer 对我来说,如果您需要身份验证 username:password@proxy.com:8080 ,这可以工作;即使从 curl 中执行此格式,通常也会使用此格式以上是关于如何配置 node-fetch 以使用公司代理?的主要内容,如果未能解决你的问题,请参考以下文章