问题描述:
尝试在端口 80 上运行服务器并且同时发出 XMLHttpRequest 请求时,遇到“Error: Listen EADDRINUSE”。尽管浏览器能够在服务器运行时继续浏览互联网。
服务器实现:
net.createServer(function (socket) { socket.name = socket.remoteAddress + ":" + socket.remotePort; console.log('connection request from: ' + socket.remoteAddress); socket.destroy(); }).listen(options.port);
请求实现:
var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { sys.puts("State: " + this.readyState); if (this.readyState == 4) { sys.puts("Complete.\nBody length: " + this.responseText.length); sys.puts("Body:\n" + this.responseText); } }; xhr.open("GET", "http://mywebsite.com"); xhr.send();
解决方案:
要解决此问题,请考虑使用以下命令终止 Nodejs 进程:
killall -9 node
请注意此命令将突然结束系统进程。要验证终止,请执行:
ps ax
以上是为什么我在运行 NodeJS 服务器并发出 XMLHttpRequest 时收到'错误:listen EADDRINUSE”?的详细内容。更多信息请关注PHP中文网其他相关文章!