金狮镖局 Design By www.egabc.com

需要用到2个库,

request

socks5-http-client/lib/Agent/

socks5-https-client/lib/Agent

因为一些已知原因,有时候,http.request请求无法拿到数据,

首先想到的是proxy,其次是socket5.

有了以上两个库,接下来的代码超级简单。

const request = require('request');
var httpAgent = require('socks5-http-client/lib/Agent');
var httpsAgent = require('socks5-https-client/lib/Agent');

var Agent = /^https/.test(url) "htmlcode">
request({
  url: url,
  strictSSL: false,
  agentClass: Agent,
  agentOptions: {
    socksHost: 'localhost', // Defaults to 'localhost'.
    socksPort: 1080, // Defaults to 1080.
  }
}, function(err, res) {
  console.log(err||res.body,res.statusCode,res.headers);
});

我有点不理解的地方是:

我使用http.request 的时候,需要自己添加各种headers,来满足请求不报错,而request库却不用写任何headers。

标签:
node,socket5,代理请求,node,代理请求

金狮镖局 Design By www.egabc.com
金狮镖局 免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
金狮镖局 Design By www.egabc.com

评论“nodejs使用socket5进行代理请求的实现”

暂无nodejs使用socket5进行代理请求的实现的评论...