Node.js – HTTP通过Squid代理授权问题

我正在尝试使用http.get发出一个简单的请求。 但是我需要通过Squid代理来提出这个请求。 这是我的代码:

var http = require('http'); var username = 'username'; var password = 'password'; var host = "proxy_host"; var auth = 'Basic ' + new Buffer(username + ':' + password).toString('base64'); var options = { host: host, port: 3128, path: "http://www.google.com", authorization: auth, headers: { Host: 'www.google.com' } }; var req = http.request(options, function(res) { console.log('STATUS: ' + res.statusCode); console.log('HEADERS: ' + JSON.stringify(res.headers)); }); req.end(); 

根据设置代理的操作小组,我的用户名和密码是正确的。 问题是,我一直得到407 – 授权要求的状态回来。

我提出请求的方式有什么问题吗? 还是需要configurationSquid代理?

提前致谢。

您应该在optionsheaders部分包含auth

 var options = { host: host, port: 3128, path: "http://www.google.com", headers: { 'Proxy-Authorization': auth, Host: 'www.google.com' } }; 
Interesting Posts