Menyelesaikan masalah "Ralat: dengar EADDRINUSE" dalam Node.JS
Apabila cuba menjalankan pelayan pada port 80 secara serentak dan memulakan XMLHttpRequest, anda mungkin menghadapi ralat "Ralat: dengar EADDRINUSE." Isu ini timbul apabila sistem setempat anda cuba memperuntukkan port yang sama kepada berbilang aplikasi, yang membawa kepada konflik.
Dalam skrip pelayan yang disediakan:
net.createServer(function (socket) { socket.name = socket.remoteAddress + ":"+ socket.remotePort; console.log('connection request from: ' + socket.remoteAddress); socket.destroy(); }).listen(options.port);
dan permintaan:
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();
isunya terletak pada pelayan mendengar pada port 80 manakala XMLHttpRequest cuba mengakses port yang sama. Untuk menyelesaikan perlanggaran, anda boleh mempertimbangkan untuk menggunakan port lain untuk pelayan anda atau untuk XMLHttpRequest.
Langkah penyelesaian masalah tambahan:
Atas ialah kandungan terperinci Mengapa saya mendapat 'Ralat: dengar EADDRINUSE' semasa menjalankan pelayan Node.js saya dan membuat XMLHttpRequest?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!