socket.io发送中文乱码
发布于 2天前 作者 stevenxzw 93 次浏览 来自 问答

nodejs下使用socket.io进行前后端通讯时发生乱码。 当前端socket = io.connect();后通过socket.emit('message’,{arg:’中文内容’});这个时候后端收到的数据是正常的,没有乱码现象,但之后页面事件再次发送socket.emit('message’,{arg:’中文内容’});时后端收到的数据就出现乱码:完整代码如下:

前端代码: socket = io.connect(); //第一次发送 socket.emit('message’,{arg:’中文内容’});

//第二次发送 setTimeout(function(){ socket.emit('message’,{arg:’中文内容2’}); }


后端代码: io.sockets.on('connection’, function (socket) { socket.on('message’, function(arg){ console.log(arg) }) })

两次后端输出代码: 第一次:{arg:’中文内容’} 第二次:{arg:’立s’}

这是什么情况,为什么socket连接后马上发送是正常的,之后的事件驱动或者延时发送的就乱码?有人遇到过吗?

1 回复

目测像是数据字节流被截断了。

回到顶部