【发布时间】:2017-05-20 06:52:18
【问题描述】:
我是 socket.io 的新手,所以我按照本教程的步骤here
我正在尝试从客户端向服务器发送一个值,然后进行一些计算并将新值发送到客户端的另一个视图。到目前为止,这是我的代码:
server.js
var express = require('express');
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
io.on('connection', function(socket){
socket.on('fromClient', function(data){
console.log(data);
//calculations will be here, not relevant
socket.emit('fromServer', data);
});
// socket.send(req.query.gid);
socket.on('disconnect', function () {
});
});
client.js(应该接收 'fromServer' 发射的部分,这是一个角度控制器)
var socket = io();
socket.on('fromServer', function(data){
console.log(data);
});
我知道“fromClient”端正在工作,因为它确实打印了数据的值,但它不打印“fromServer”值。我不确定这里的问题是否是 socket.on 中的 socket.emit 从未被调用(服务器)或者 socket.on('fromServer') 不起作用(客户端)。
为了记录,我做了另一个测试,它确实有效,但它只是用快递。另一方面,我尝试在我的项目中在 socket.on 之外使用 socket.send 和 socket.emit 并且它有效,所以我不确定它是否与角度有关,它是 io.on( 'connection') 事件,或者只是嵌套。
【问题讨论】:
标签: angularjs node.js express socket.io