这是我的代码:
var net = require('net');
net.createServer(function (socket) {
socket.setEncoding("utf8");
socket.write("Welcome " + socket.name + "\n");
socket.on('data', function (data) {
console.log(data);
});
socket.on('end', function () {
socket.destroy();
});
}).listen(5000);
我正在使用telnet 127.0.0.1 5000连接到服务器。 我将套接字编码设置为UTF-8。 该脚本正常工作,直到我们发送包含“一些”cyrrillic字符的字符串。
例如:
data = абвгдеёжзийклмнопрстуфхцчшщьыъэюя;
console.log()
输出абвгдеёжзийклмнопрст�����ф�цчшщьыъэю�����
编码有什么问题?为什么只有几个字符(х,у,я)变成问号?
我用Google搜索了这个问题一个小时。没有找到任何决定问你的事。
答案 0 :(得分:1)
这既不是node.js也不是net.js模块问题。 正如@robertklep所说,使用netcat而不是telnet更好。