标签:app lse 错误 log 数据 功能 new [] UNC
每2秒客户机请求的数据app.get("/query_data"..我是连接到一个特定的IP地址+端口。连接后,我发送一个字符串到这个地址来接收数据。 这工作得很好,但只有一次。
var socket = new net.Socket();
app.get("/query_data", function (req, res) {
socket.connect(2711, ‘192.168.1.173‘, function (err) {
if (err) {
console.log(err);
}
else {
socket.write("d"); // send "d" to trigger socket.on("data")
}
});
socket.on(‘data‘, function (data) {
res.send(data);
});
});
我收到错误消息:
错误(ERR_HTTP_HEADERS_SENT):不能设置标题后发送 到客户端
然而,当我把var socket = new net.Socket();内部app.get()它的工作原理。
app.get("/query_data", function (req, res) {
var socket = new net.Socket();
socket.connect(2711, ‘192.168.1.173‘, function (err) {
if (err) {
console.log(err);
}
else {
socket.write("d");
}
});
socket.on(‘data‘, function (data) {
res.send(data);
});
});
这是为什么呢? 我不希望创建一个新的套接字每次客户端从服务器请求数据。
客户端,它的包装在2秒setTimeout()功能:
$.get("/query_data", function (data) {
data = data.replace(/[[]&]+|nan/g, ‘null‘);
console.log(JSON.parse(data));
(....)
});
标签:app lse 错误 log 数据 功能 new [] UNC
原文地址:http://blog.51cto.com/14021402/2315969