奇葩socket data自动转url编码问题
发布于 9 年前 作者 fangker 3586 次浏览 最后一次编辑是 8 年前 来自 问答

“use strict”; var net = require(‘net’);

var HOST = ‘127.0.0.1’; var PORT = 6969;

// 创建一个TCP服务器实例,调用listen函数开始监听指定端口 // 传入net.createServer()的回调函数将作为”connection“事件的处理函数 // 在每一个“connection”事件中,该回调函数接收到的socket对象是唯一的 net.createServer( (sock) =>{

// 我们获得一个连接 - 该连接自动关联一个socket对象
console.log(`CONNECTED: ${sock.remoteAddress}  ':' ${ sock.remotePort }`);
// 为这个socket实例添加一个"data"事件处理函数
sock.on('data',  (data)=> {
    console.log(`DATA '  ${sock.remoteAddress }   ':' ${data}`);
    // 回发该数据,客户端将收到来自服务端的数据
    console.log(data);
    sock.write(`You said ${data}`,'utf8');
});

// 为这个socket实例添加一个"close"事件处理函数
sock.on('close',  (data)=> {
    console.log(`CLOSED:  ${sock.remoteAddress} on  ${sock.remotePort}`);
});

}).listen(PORT, HOST);

console.log(Server listening on ${HOST }:${ PORT});

代码如上,图如下: QQ截图20160414204704.png 不知为何进行了url编码,百思不得其姐姐。

3 回复

那个data是Buffer 类型,输出要用data.toString()

得了姐别忘了说声谢谢

@gzhangzy 咳咳,我知道没看我转utf8之后成为UrlEncode了么…谢谢

问题解决:那个软件发出的是 utf8-html这种编码…

回到顶部