gpt4 book ai didi

javascript - 处理 Node.js 套接字数据

转载 作者:数据小太阳 更新时间:2023-10-29 06:02:03 25 4
gpt4 key购买 nike

我有服务器从客户端 [GPS 设备] 接收数据。我在以可读格式呈现数据(即从客户端获得的结果)时遇到问题。以下是我尝试过的方法。

正在做:

console.log(data)

我明白了

<Buffer d0 d7 3d 00 c4 56 7e 81>

也试过

 console.log(data.toString())

但我得到了不需要的结果:见下文:

��A�V~�

这是我的完整代码:

var net = require('net');
var fs = require('fs');

var server = net.createServer(function (socket) {
console.log('Server started: Waiting for client connection ...');
console.log('Client connected:port,address: '+socket.remotePort, socket.remoteAddress);
socket.on('data', function (data) {
var date = new Date();
var today = date.getDate()+'_'+date.getMonth();
fs.appendFile(today+'_log.txt', data, function (err) {
if (err) throw err;
console.log(data.toString())

});
});
});

server.listen(my_port, my_ip);

感谢您的输入。

最佳答案

根据文档,您必须指定一种编码才能获取 String 而不是 Buffer:

Event: 'data'#
Buffer object
Emitted when data is received. The argument data will be a Buffer or String. Encoding of data is set by socket.setEncoding().

您可以配置套接字以获取 UTF-8 格式的数据,例如:

socket.setEncoding('utf8');

关于javascript - 处理 Node.js 套接字数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21851424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com