Rumah > hujung hadapan web > tutorial js > Mengapa saya mendapat 'Ralat: dengar EADDRINUSE' semasa menjalankan pelayan Node.js saya dan membuat XMLHttpRequest?

Mengapa saya mendapat 'Ralat: dengar EADDRINUSE' semasa menjalankan pelayan Node.js saya dan membuat XMLHttpRequest?

Barbara Streisand
Lepaskan: 2024-11-28 06:51:11
asal
572 orang telah melayarinya

Why am I getting

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);
Salin selepas log masuk

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();
Salin selepas log masuk

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:

  • Pastikan tiada aplikasi lain sedang mendengar pada port 80.
  • Mulakan semula Node.JS dan web anda pelayar.
  • Semak tetapan tembok api anda untuk memastikan ia tidak menyekat port.
  • Jika perlu, tamatkan sebarang proses Node.JS secara paksa menggunakan killall -9 nod. Walau bagaimanapun, ambil perhatian bahawa ini harus digunakan dengan berhati-hati kerana ia juga boleh membunuh proses sistem lain.

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan