1
У меня есть сценарий, в котором у меня есть Node, извлекающий данные с одного сервера через соединение net.socket, а затем с помощью sockets.io для вывода в клиентский браузер. Данные с сервера обновляются каждую минуту или около того. Если я вывожу эти данные на консоль, он отлично работает, показывая обновления по мере их появления. Тем не менее, я не могу заставить эти данные переноситься в браузер через socket.io. Я хорошо разбираюсь в PHP, но новичок в javascript. Однако я понимаю, что по мере обновления данных с сервера он должен запускать «событие», из-за которого socket.io выводит новые данные. Буду признателен за любую помощь.Node.js, не обновляющий клиентскую сторону
//set all variables and modules includes here
// [...]
server = http.createServer (function(req, res) {
res.writeHead(200, {'Content-Type:' 'text/html'});
res.end(index);
}).listen(8080, localhost);
//connection to stats server
var socket = new net.Socket();
socket.connect (6000, "xxx.xxx.xxx.xxx", function() {
console.log("connected");
});
socket.on('data', function(data) {
var buf = new Buffer(data, 'base64');
var calls = buf.toString();
console.log(calls); // if I include this, data outputs to console perfectly
//set up socket.io connection to client
var clientupdate = function clientupdate() {
io.sockets.on('connection', function(socket) {
socket.emit('calls', {data: calls});
});
}
});
где ваш код на стороне клиента? – c0deNinja
Я не так заинтересован в стороне клиента, так как я могу подключиться через socket.io без проблем. Проблема в том, что данные («вызовы»), которые вытаскиваются с сервера, не передаются в socket.io «socket.emit (« вызовы », {данные: вызовы)); нажимать на клиента. Не уверен, что мне не хватает. – Godfried