Estoy usando nodejs para ejecutar el servidor, no hay ningún archivo de registro
Este es mi servidor.js
const https = require('https'); const fs = require('fs'); const ws = require('ws'); const options = { key: fs.readFileSync('key.pem'), cert: fs.readFileSync('cert.pem') }; const wss = new ws.Server({noServer: true}); function accept(req, res) { // all incoming requests must be websockets if (!req.headers.upgrade || req.headers.upgrade.toLowerCase() != 'websocket') { res.end(); return; } // can be Connection: keep-alive, Upgrade if (!req.headers.connection.match(/\bupgrade\b/i)) { res.end(); return; } wss.handleUpgrade(req, req.socket, Buffer.alloc(0), onConnect); } function onConnect(ws) { ws.on('message', function (message) { let name = message.match(/([\p{Alpha}\p{M}\p{Nd}\p{Pc}\p{Join_C}]+)$/gu) || "Guest"; ws.send(`${name}!`); //setTimeout(() => ws.close(1000, "Bye!"), 5000); }); } https.createServer(options, function (req, res) { res.writeHead(200); res.end("hello world\n"); }).listen(8000);Este es mi código en reaccionar
componentDidMount() { var connection = new WebSocket('wss://localhost:8000/'); connection.onopen = function(e) { connection.send("add people"); }; connection.onmessage = function(event) { // alert(`[message] Data received from server: ${event.data}`); console.log("output ", event.data); }; }Mientras trato de conectarme con web-socket con mi archivo jsx, aparece un error que es que Firefox no puede establecer una conexión con el servidor en wss://localhost:8000/.
Su implementación necesita algunos cambios. En el servidor backend, olvidó llamar a la función onConnect . Entonces su método ws.on nunca llamará.
Además, importó el ws y creó un servidor WebSocket wss , pero agregó un detector de eventos en ws incorrectamente, debe agregar un detector en su instancia de Websocket ( wss ):
// rest of the codes ... const was = new ws.Server({noServer: true}) wss.on('connection`) { // do something here ... } // rest of the codes ... https.createServer(options, () => { // do something here ... }) Hay algunos ejemplos de cómo crear el servidor WebSocket junto con el servidor HTTP en la página ws npm .