socket.cork 尝试通过 socks 代理 (TOR) 发起请求时不是函数
socket.cork is not a function when trying to initiate request through socks proxy (TOR)
_http_outgoing.js:797
socket.cork();
^
TypeError: socket.cork is not a function
at ClientRequest._flushOutput (_http_outgoing.js:797:10)
at ClientRequest._flush (_http_outgoing.js:776:16)
....
尝试使用之前使用 "proxysocket" 库创建的 SOCKS 代理程序 http.get() 或 request() 时出现上述错误。
我正在尝试创建工作代理以使用它 socket.io,或者 ws 或 http 以通过 SOCKS 代理建立连接。我尝试 "proxysocket" 库,它的代理给我上面的错误。
let agent = proxysocket.createAgent("127.0.0.1", 9050);
request("http://www.google.com", {agent: agent}, (err, res, body) => {
if (err){
console.log("Http request error: " + err);
} else{
console.log("Http request connection success!");
console.log('statusCode:', response && response.statusCode);
console.log(body)
}
});
好的,这是解决方案。我尝试了很多代理,唯一有效的代理是 "socks5-http-client"。
其他代理在使用 SOCKS5 协议时出现各种错误。
const http = require("http");
const Agent = require("socks5-http-client/lib/Agent"); // Constructor
let agent = new Agent({
socksHost: 'localhost', // Defaults to 'localhost'.
socksPort: 9050 // Defaults to 1080.
});
http.get({
hostname: "www.google.com", // Can be also onion address if used behind TOR
port: 80,
agent: agent,
method: 'GET'
}, (res)=>{
console.log("Connected");
res.pipe(process.stdout);
//Process res
}).on('error', (err) => {
console.error(`Got error: ${err.message}`);
});
此类代理可以传递到使用 http.Agent 的任何类型的库中,例如 socket.io、ws 等
_http_outgoing.js:797
socket.cork();
^
TypeError: socket.cork is not a function
at ClientRequest._flushOutput (_http_outgoing.js:797:10)
at ClientRequest._flush (_http_outgoing.js:776:16)
....
尝试使用之前使用 "proxysocket" 库创建的 SOCKS 代理程序 http.get() 或 request() 时出现上述错误。
我正在尝试创建工作代理以使用它 socket.io,或者 ws 或 http 以通过 SOCKS 代理建立连接。我尝试 "proxysocket" 库,它的代理给我上面的错误。
let agent = proxysocket.createAgent("127.0.0.1", 9050);
request("http://www.google.com", {agent: agent}, (err, res, body) => {
if (err){
console.log("Http request error: " + err);
} else{
console.log("Http request connection success!");
console.log('statusCode:', response && response.statusCode);
console.log(body)
}
});
好的,这是解决方案。我尝试了很多代理,唯一有效的代理是 "socks5-http-client"。
其他代理在使用 SOCKS5 协议时出现各种错误。
const http = require("http");
const Agent = require("socks5-http-client/lib/Agent"); // Constructor
let agent = new Agent({
socksHost: 'localhost', // Defaults to 'localhost'.
socksPort: 9050 // Defaults to 1080.
});
http.get({
hostname: "www.google.com", // Can be also onion address if used behind TOR
port: 80,
agent: agent,
method: 'GET'
}, (res)=>{
console.log("Connected");
res.pipe(process.stdout);
//Process res
}).on('error', (err) => {
console.error(`Got error: ${err.message}`);
});
此类代理可以传递到使用 http.Agent 的任何类型的库中,例如 socket.io、ws 等