Hinweis : Für Support-Fragen verwenden Sie bitte einen dieser Kanäle: Stackoverflow oder Slack
Wenn ein Objekt als Daten ausgegeben wird und darin eine Zeichenfolge von ≥
(oder dem Unicode \u2265
) verwendet wird, wird es in den Zeichenfolgenbuchstaben e
und ≤
wird zu d
Kundenseite
channel.emit('data', {data:'≥'});
Serverseite
socket.on('data',({data:bla})=>{
console.log(bla); // prints 'e'
});
Hinweis : Der beste Weg, um eine schnelle Antwort zu erhalten, besteht darin, einen fehlgeschlagenen Testfall bereitzustellen, indem Sie beispielsweise die folgende Geige forken.
dass die Daten durchgängig gleich bleiben
Dies geschieht nur, wenn der Socket nicht über xhr aktualisiert wurde (erste Verwendung).
Nach dem Upgrade auf Websocket werden alle Daten korrekt gesendet
siehe #451 und #572
Es gab ein Problem beim Parsen von utf8 in Version 1.x, könnten Sie es bitte mit Version 2.x versuchen?
Verwandt:
habe es mit 2.0.4 probiert, passiert immer noch...
mit dem Kodieren und Dekodieren der Daten mit diesem Code behoben:
Kundenseite
function strencode( data ) {
return encodeURIComponent( escape( JSON.stringify( data ) ) );
}
Serverseite
function strdecode( data ) {
return JSON.parse( unescape( decodeURIComponent( data ) ) );
}
Ja das scheint zu funktionieren. Vielen Dank!
Hilfreichster Kommentar
habe es mit 2.0.4 probiert, passiert immer noch...
mit dem Kodieren und Dekodieren der Daten mit diesem Code behoben:
Kundenseite
Serverseite