簡體   English   中英

加載資源失敗:服務器響應狀態為 404(未找到) Node.js socket.io

[英]Failed to load resource: the server responded with a status of 404 (Not Found) Node.js socket.io

我正在嘗試使用Node.jssocket.io創建一個服務器,它可以完美啟動。 但是,當我試圖通過瀏覽器訪問我的服務器站點時,他寫了“ Cannot Get / ”並在控制台中給出了一個錯誤“ Failed to Load Resource: The Server Respondd with A Status of 404 (Not Found) ”。 這兩天我試圖了解問題出在哪里,我將非常感謝您的幫助。 這是我的服務器代碼:

const express = require("express");
var http = require("http");
const app = express();
const port = process.env.PORT || 5000;
var server = http.createServer(app);
var io = require("socket.io").listen(server);

//middlewre
app.use(express.json());

io.on("connection", (socket) => {
    console.log("connected");
    console.log(socket.id, "has joined");
    socket.on("/test", (msg) => {
        console.log(msg);
    })
});

server.listen(port, "0.0.0.0", () => {
    console.log("server started");
});

您的服務器當前未設置為處理除 Websocket 連接升級請求之外的任何其他 http 流量,您無法通過在瀏覽器中輸入 url 來進行此操作。 此外,瀏覽器無法協商此連接升級或在建立后保持 Websocket 連接正常工作。 為此,您需要一些 javascript 代碼才能在客戶端運行。

socket.io庫提供了您需要的一切,請查看下面提供的鏈接中的最小工作示例。 您基本上應該設置您的服務器來提供 html 文檔,該文檔提供了一個上下文,可以通過socket.io庫管理整個 websocket 連接升級並維護連接。

https://socket.io/docs/v2#Minimal-working-example

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM