934870
大家好,我在使用 net 建立 TCP Server 后,使用 WIN10 的命令行终端用 telnet 连接相应端口,然后希望能够接收和输出中文,但目前为止怎么都不成功,不知道各位有没有好的解决方法,谢谢大家了。
我把我目前的测试程序贴出来,很简陋,请勿笑:
const assert = require('assert');
const net = require('net');
const iconv = require('iconv-lite');
let clients = 0;
let expectedAssertions = 2;
const server = net.createServer(function (client) {
clients++;
const clientId = clients;
console.log('Client connected:', clientId);
client.setEncoding('');
client.on('end', function () {
console.log('Client disconnected:', clientId);
});
let infor = '你好,欢迎:' + clientId + '\n';;
let str = iconv.encode(infor, 'GBK')
client.write(str);
let inputStr = ''
client.on('data', (data) => {
if(data == '\r\n') {
inputStr = iconv.encode(inputStr, 'GBK');
client.write(inputStr);
inputStr = '';
} else {
console.log(data);
inputStr+=data;
}
})
});
server.listen(8000, function () {
console.log('Server started on port 8000');
});