好的,我只是不明白。
假设我有一些node.js应用程序发出一些get / post请求。 假设我在localhost:9050也有一些socks5代理服务器。
当我使用代理卷曲网址时,一切顺利。
但是当我尝试使用http.request获取它时,使用node-socksified httpAgent将请求传递给socks代理,响应在收到第一个数据块后立即发出“end”事件。
我尝试了另一个具有相同结果的代理实现。我猜它是以某种方式与处理套接字的node.js连接,但我只是不明白我做错了什么。
有人有同样的问题吗?
我的代码看起来像这样:
var options = ...
options.agent = new SocksAgent({
socks_host : "127.0.0.1",
socks_port : 9050
});
var req = http.request(options, function(res) {
res.on("data", function(chunk) {
console.log(chunk);
});
res.on("end", function() {
console.log("end");
});
});
req.end();
答案 0 :(得分:0)
此问题是由袜子代理实现未在节点0.10.x中实现对新的可读流接口的支持引起的。
我编写的两个socks v5客户端实现 - http-client和https-client支持旧接口和新接口,即它们同时适用于节点0.10.x和0.8.x或更低。