使用https-proxy-agent下载墙外资源

1,140 阅读1分钟

现在有一张图片地址是墙外的,i3.nhentai.net/galleries/3… ,用nodejs把这张图片下载保存本地,会遇到一个超时的问题。

image.png

image.png

就算是开启VPN,启用全局模式,也是不行。

此时可以借助https-proxy-agent这个包,通过VPN进行下载。

image.png

这个端口是怎么看呢?

打开VPN工具,下面就显示了VPN的代理端口:

image.png

或者是打开电脑设置的代理项,就可以看到VPN的代理端口

image.png

然后重新运行,图片下载成功了

image.png

踩坑

我一开始用的是http-proxy-agent这个包(少了s),结果失败了,然后在这上面卡了很多时间。后面换成了https-proxy-agent才成功了。

疑问

我的印象中,不是开启VPN,就能直接使用浏览器上外网吗?为什么同样开启VPN,用nodejs就无法下载境外资源?此时我打开豆包,向豆包提问

image.png

总结就是:浏览器检测到电脑开了代理后,会自动走代理进行转发。而nodejs不会进行自动代理转发,所以要手动配置代理进行转发。