我需要建立到 smtp 服务器的 tcp 套接字连接。是否可以通过nodejs上的代理服务器进行连接?是否有可用的 npm 模块?我根本找不到。
var net = require('net');
var HOST = '127.0.0.1';
var PORT = 6969;
var client = new net.Socket();
client.connect(PORT, HOST, function() {
console.log('CONNECTED TO: ' + HOST + ':' + PORT);
client.write('I am here!');
});
// Add a 'data' event handler for the client socket
// data is what the server sent to this socket
client.on('data', function(data) {
console.log('DATA: ' + data);
});
// Add a 'close' event handler for the client socket
client.on('close', function() {
console.log('Connection closed');
});
最佳答案
net.socket
、tls.connect
和 dgram
不支持代理。
将它与代理一起使用的最简单方法是用 proxychains
或类似的东西替换一些 libc 函数。
var client = require('tls')
.connect(443, 'www.facebook.com', function() {
console.log('connected');
client.write('hello');
})
.on('data', function(data) {
console.log('received', data.toString());
})
.on('close', function() {
console.log('closed');
});
proxychains node fit.js
connected
received HTTP/1.1 400 Bad Request
...
closed
关于node.js - TCP套接字客户端通过nodejs上的代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33710542/