Estoy trabajando con WebSocket en reactjs, pero WebSocket.send no se ejecuta en el evento onClick. aquí creo WebSocket
const ws = new WebSocket("ws://192.168.18.112:8000/ws/notification/");
conectarse a WebSocket
ws.onopen = (e) => { console.log("connect"); };
aquí está mi función onClick
const sendNotification = (e) => { console.log("click"); if (ws.readyState === WebSocket.OPEN && message !== "") { ws.send("message"); console.log("Sending message"); // this console is execute } else if (ws.readyState === WebSocket.CONNECTING) { ws.addEventListener("open", () => sendNotification()); console.log("Connecting state"); console.log("Not Send"); } else { console.log("nothing happen"); } };
así que aquí está mi problema. No puedo encontrar errores o problemas en mi código.
prueba este W3CWebSocket . Además, no creo que haya un "/" después de la notificación después de ws/notification , verifique dos veces si su punto final es correcto o no.
mport React, { Component } from 'react'; import { w3cwebsocket as W3CWebSocket } from "websocket"; const client = new W3CWebSocket('ws://192.168.18.112:8000/ws/notification/'); class App extends Component { componentWillMount() { client.onopen = () => { console.log('WebSocket Client Connected'); }; client.onmessage = (message) => { console.log(message); }; } render() { return ( <div> Practical Intro To WebSockets. </div> ); } } export default App;