我正在尝试使用带有代理服务器的axios进行https调用:
const url = "https://walmart.com/ip/50676589"
var config = { proxy: { host: proxy.ip, port: proxy.port } }
axios.get(url, config)
.then(result => {})
.catch(error => {console.log(error)})
Run Code Online (Sandbox Code Playgroud)
我使用的代理服务器都在美国,非常匿名,支持HTTP和HTTPS.
我收到此错误:
{错误:写EPROTO 140736580649920:错误:140770FC:SSL例程:SSL23_GET_SERVER_HELLO:未知协议:../ deps/openssl/openssl/ssl/s23_clnt.c:794:
为了确保问题是axios而不是代理,我试过这个:
卷曲-x 52.8.172.72:4444 -L ' https://www.walmart.com/ip/50676589 '
这完全正常.
如何配置axios以使用代理和https URL?
这可能是一个长镜头.但是在Node.js中,我想通过VPN服务器发出HTTP请求(例如,在npm上使用请求包).我已经有一个VPN服务器设置(使用HideMyAss),我可以在操作系统级别通过在我的操作系统网络设置部分配置它来连接它.但我希望使用Nodejs程序以编程方式连接到它,并使用通过该VPN路由的该程序进行任何HTTP请求.
这可以使用代理来完成,例如:
var request = require('request');
var url = 'https://www.google.com';
var proxy = 'http://username:password@usa.proxyservice.com:1234';
request.get({ url: url, proxy: proxy }, function(err, res, body) {
});
Run Code Online (Sandbox Code Playgroud)
...但我想做一些与VPN类似的事情.这甚至可能吗?谢谢!
我有一个在 Windows 服务器上运行的 Puppeteer 应用程序。该服务器的 IP 地址被它所抓取的某些网站阻止,因此需要一个新的 IP 地址。我有一个 NordVPN 帐户,但通过服务器故障被告知,如果我运行 NordVPN 应用程序,我将失去其静态 IP 的远程桌面访问权限 ( https://serverfault.com/questions/1060082/would-adding-nordvpn -to-a-windows-server-block-remote-access-at-its-ip/1060085),我相信 DNS 指向该 IP 的网站也将无法访问,所以我需要一个不同的解决方案。
我发现了一些使用 Puppeteer 连接到 VPN 的示例,但这些解决方案似乎使用 Linux 服务器(How to connect VPN using nodejs in ubuntu)。