首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >接收UTF8字符时服务器断开连接

接收UTF8字符时服务器断开连接
EN

Stack Overflow用户
提问于 2018-01-17 21:45:43
回答 1查看 243关注 0票数 0

--我找到了如何解决这个问题的方法,我刚刚将其降级为1.4.0,现在它运行良好。

当UTF8字符通过Socket.IO发送时,它会立即断开连接,例如:á,è,é,c

我试图通过替换所有字符串来避免这种情况,但我的处境是这不再有效

运行Ubuntu 16.04 Socket.io@2.0.4 Socket.io-client@2.0.4

发送特殊字符后出错: WebSocket在建立连接之前已关闭。

这个错误发生在我在聊天时发送了“爱马仕”

客户端

代码语言:javascript
复制
sendMessage: function(message) {
        if (message === '') return;
        if (this._lastMessage > (Date.now() - this._chatCooldown * 1000)) {
            notify('error', vsprintf(locale.chatCooldown, [((this._lastMessage - (Date.now() - (this._chatCooldown * 1000))) / 1000).toFixed(1)]));
            return;
        }
        this._input.val('');
        this._lastMessage = Date.now();
        socket.emit('chat message', {'type': 'chat', 'message': message});
}

服务器端

代码语言:javascript
复制
chat.message = chat.message.replace(/<\/?[^>]+(>|$)/g, "");
var uniqueID = generate(20);
io.sockets.emit('chat message', {
    message: chat.message,
    profile: {
       avatar: user.avatar,
       rank: user.rank,
       username: user.username
    },
    time: time(),
    uniqueID: uniqueID
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-17 22:21:14

您可以执行以下操作来验证(证明) socket.io在Linux上对非英语字符是否正常工作

按照从这里开始的入门部分:https://socket.io/get-started/chat/

总结一下,从您的终端运行以下内容

  1. git克隆https://github.com/socketio/chat-example.git
  2. cd聊天-示例
  3. npm安装
  4. 节点index.js

打开web浏览器并导航到localhost:3000

尝试使用底部的聊天栏与非英语宪章-它会工作得很好。

关于你的问题。如果某些东西不适合您,这可能是由于您的代码和api的误用。按照这里的文档:https://github.com/socketio/socket.io/blob/master/docs/README.md

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48310516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档