Quindi ho visto questo post bellissimo, Experimenting with Node.js. Ho deciso di provare a configurarlo da solo utilizzando l'autore gist. Non ha funzionato.WebSocket si chiude su send
Ulteriori debug mi mostrano che la websocket si sta connettendo bene, ma si sta chiudendo non appena si invoca 'send'. Ecco la traccia Wireshark (perdonate la spaziatura strano):
GET /test HTTP/1.1
Host: 127.0.0.1:8000
Sec-WebSocket-Key2: 3 j 92 9 62" 7 0 8 8
Upgrade: WebSocket
Connection: Upgrade
Origin: http://127.0.0.1:3000
Sec-WebSocket-Key1: 96'5% S72.93?06
......(bHTTP/1.1 101 WebSocket Protocol Handshake
Upgrade: WebSocket
Connection: Upgrade
Sec-WebSocket-Origin: http://127.0.0.1:3000
Sec-WebSocket-Location: ws://127.0.0.1:8000/test
.4.R....mh.....{.{"action":"move","x":450,"y":22,"w":1146,"h":551}.
Ho provato questo sia in Chrome e Firefox 4.0 beta. Entrambi mostrano lo stesso comportamento. Se vado allo original blog site, funziona bene.
Un'altra cosa. Se entro in JS console sia in FF o Chrome e faccio la seguente:
ws = new WebSocket('ws://localhost:8000/test')
ws.send("foo")
Si stacca subito e non invia il messaggio. Il server mostra la connessione e l'handshake, ma non riceve mai un messaggio.
Ho trovato alcune domande che erano simili ma sono state risolte senza pubblicare la correzione o non sembravano essere applicate in questa situazione. Posso postare il codice dallo gist se renderà più semplice.
Sebbene questo collegamento possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il collegamento per riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia. - [Dalla recensione] (/ recensione/post di bassa qualità/12231080) – dbugger
Grazie mille per il consiglio. Lo avrò in mente la prossima volta! –