尝试使用nodejs访问远程服务器时出现套接字错误“code”:“ECONNREFUSED”

尝试使用nodejs访问远程服务器时出现套接字错误“code”:“ECONNREFUSED”

问题描述:

我试图连接到远程服务器,但每次尝试创建连接时,我都会收到 套接字错误“code”:“ECONNREFUSED” “错误号”: “ECONNREFUSED”, “系统调用”: “连接”, “地址”: “127.0.0.1”, “口”: “80”} 我的代码如下:尝试使用nodejs访问远程服务器时出现套接字错误“code”:“ECONNREFUSED”

//create the connection 
const client = net.createConnection({ 
    host: urlObj.host, 
    port: urlObj.port 
}); 


//on receiving the data, print it 
client.on('data', function (data) { 
    if (verbose) { 
     console.log(data.toString()); 
    } else { 
     //get rid of the head of the response if not verbose mode 
     var responseSplit = data.toString().split("\r\n"); 
     var inBody = false; 
     for (var i in responseSplit) { 
      if (responseSplit[i] == "") { 
       inBody = true; 
      } 
      if (inBody) { 
       console.log(responseSplit[i]); 
      } 
     } 
    } 
}); 

//send the request 
client.on('connect',() => { 
    client.write(clientWritingString); 
}); 

client.on('error', err => { 
    console.log('socket error %j', err); 
    process.exit(0); 
}); 

而且我在这里解析Url:

//parse the URL 

var urlToParse = process.argv[process.argv.length - 1]; 
var urlObj = url.parse(urlToParse); 
if(urlObj.port==null){ 
    urlObj.port=80; 
} else { 
    urlObj.host = urlObj.host.split(":")[0]; 
} 

错误消息显示您的程序试图访问您自己的计算机(= 127.0.0.1)。检查您正在提供给例程的原始URL,并确保解析器以实际的远程URL结束。

+0

是的,我觉得我一切正常,但它仍然尝试访问本地主机。我能做什么? – BleachedAxe