Node.js 节点-连接到套接字时的ENONET
执行此代码:Node.js 节点-连接到套接字时的ENONET,node.js,sockets,Node.js,Sockets,执行此代码: var fs = require('fs'); var Socket = require('net').Socket; var socket = new Socket(); console.log('connecting to: ' + server.host + ':' + server.port ); socket.connect( server.host, server.port ); socket.on('error', function(err) { c
var fs = require('fs');
var Socket = require('net').Socket;
var socket = new Socket();
console.log('connecting to: ' + server.host + ':' + server.port );
socket.connect( server.host, server.port );
socket.on('error', function(err) {
console.log(arguments);
});
socket.on('connect', function() {
console.log('connected');
});
socket.on('end', function() {
console.log('socket ended');
});
始终抛出此错误:
{ '0': { [Error: connect ENOENT] code: 'ENOENT', errno: 'ENOENT', syscall: 'connect' } }
我使用的是基于CloudLinux(x64)的共享主机,具有SSH访问权限。您的主机和端口向后。根据,您应该做:
socket.connect(server.port, server.host);
服务器端:-
var net = require('net');
var server = net.createServer(functi`on (socket){
socket.write("hi\n");
socket.write("you there\n");
socket.on("data", function(dd) {
console.log(data);
});
});
server.listen(8001);
var fs = require('fs');
var Sock = require('net');
var socket = Sock.Socket();
socket.connect(8001,"127.0.0.1", function() {
console.log('connecting to: ' + server.host + ':' + server.port );
});
socket.on('connect', function() {
console.log('connected');
});
socket.on('error', function(err) {
console.log(arguments);
});
socket.on('end', function() {
console.log('socket ended');
});
客户端:-
var net = require('net');
var server = net.createServer(functi`on (socket){
socket.write("hi\n");
socket.write("you there\n");
socket.on("data", function(dd) {
console.log(data);
});
});
server.listen(8001);
var fs = require('fs');
var Sock = require('net');
var socket = Sock.Socket();
socket.connect(8001,"127.0.0.1", function() {
console.log('connecting to: ' + server.host + ':' + server.port );
});
socket.on('connect', function() {
console.log('connected');
});
socket.on('error', function(err) {
console.log(arguments);
});
socket.on('end', function() {
console.log('socket ended');
});
server.host
和server.port
解析为什么?i、 e.它们是否正常?irc.twitch.tv:6667,我可以使用PHP fsockopenIt连接到同一IP:Port可能是向后连接到socket.connect
。请参阅下面的答案。您的问题是否已解决?是的,6667端口刚刚被阻止。您正在使用连接回调和事件。为什么不使用其中的一个呢?你可以用任何你喜欢的方式来做,但是在回调中使用事件是一个很好的方法