Javascript 我如何检查它是否是完整的数据
我有一个从客户端设备接收数据的服务器。客户端将向服务器发送数据,并且数据总是以3个字符结尾,例如Javascript 我如何检查它是否是完整的数据,javascript,node.js,Javascript,Node.js,我有一个从客户端设备接收数据的服务器。客户端将向服务器发送数据,并且数据总是以3个字符结尾,例如*46 如何检查数据是否以星号和2个字符结尾,以便我知道这是来自我客户的完整数据 此外,设备可能会在数据的末尾附加一个换行符,那么如何检查数据的末尾是否有换行符呢 以下是我目前的代码: var net = require('net'); var server = net.createServer(function(socket) { socket.on('data', function(dat
*46
如何检查数据是否以星号和2个字符结尾,以便我知道这是来自我客户的完整数据
此外,设备可能会在数据的末尾附加一个换行符,那么如何检查数据的末尾是否有换行符呢
以下是我目前的代码:
var net = require('net');
var server = net.createServer(function(socket) {
socket.on('data', function(data) {
var receivedata = data.toString();
// How to check if received data is complete, i.e. ending in 3 characters, *23
});
});
您可以为此使用正则表达式。以下是一些帮助您起步的链接:
*[0-9]{2}$使用正则表达式。例如:
var str = "Hello wor*23";
if(str.match(/\*[0-9][0-9]$/)){
console.log("Hello");
}
else{
console.log("Data not proper");
}
它检查最后3个值是否为
*number
您可能正在查找此值
只要数据是流的一块,就需要等待end
事件来获取完整的数据
var net = require('net');
var server = net.createServer(function(socket) {
var receivedata = "";
socket.on('data', function(data) {
receivedata += data.toString();
});
socket.on('end', function() {
console.log(receivedata);
});
});
注意未经测试