Javascript Node.js,net.socket,解码西里尔字母
这是我的密码:Javascript Node.js,net.socket,解码西里尔字母,javascript,node.js,sockets,Javascript,Node.js,Sockets,这是我的密码: 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'
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连接到服务器。
我将套接字encodig设置为UTF-8。
在我们发送一个包含“某些”西里尔字母的字符串之前,脚本工作正常
例如:
data = абвгдеёжзийклмнопрстуфхцчшщьыъэюя;
console.log()
输出�����ф�цчшщьыъэю�����代码>
编码有什么问题?为什么只有几个字符(Б、П、呫)会变成问号
我用谷歌搜索了这个问题一个小时。没有找到任何决定询问您的问题。这既不是node.js也不是net.js模块问题。
正如@robertklep提到的,最好使用netcat而不是telnet。你应该使用类似的东西来代替telnet(它不是一个透明的直通网络实用程序,可能会损坏你的数据)。@robertklep你是天才!谢谢你的建议!从未想过问题出在telnet上。:)