【发布时间】:2016-06-08 06:53:14
【问题描述】:
我正在尝试在 admin.html
中获取新的连接用户列表- client.html(客户端登录认证)
- admin.html(通知新用户加入)
server.js
app.get('/', function(req, res){
res.sendfile('client.html');
});
app.get('/admin', function(req, res){
res.sendfile('admin.html');
});
io.on('connection', function(socket){
socket.on('login', function(msg){
socket.emit('notification', 'new user joined');
});
socket.on('notification', function(msg){
console.log(msg);
});
});
在这里我可以尝试从 login 事件发出 notification 事件,但它没有在控制台中打印任何内容,login 事件从 触发>client.html.
当我从 client.html
尝试此操作时<script src="/socket.io/socket.io.js"></script>
<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
<script>
var socket = io();
$('form').submit(function(){
var a= $('#username').val();
var b= $('#usermail').val();
var c= $('#reason').val()
socket.emit('login',{username:a,usermail:b,reason:c});
socket.emit('notification','new user joined');
});
</script>
登录事件只会发出,通知不起作用,当我在通知事件工作时单独运行时。
注意:假设如果我从 admin.html 开始,我需要设置时间循环以不断检查新用户是否已添加。这就是为什么我希望在用户连接时自动触发事件。
请告诉我如何实现这一目标?
【问题讨论】:
-
socket.emit('notification', 'new user joined');在客户端而不是服务器上发出notification事件。 -
有没有办法从服务器端发出事件?或建议如何在 admin.phtml 中显示新用户
-
是的,在客户端上写相同的行。查看socket.io/docs了解更多详情
-
现在只抓住了你告诉@MukeshSharma :-) 我也尝试过 client.html 但没有运气请查看我更新的问题
-
分享
client.phtml的逻辑
标签: javascript node.js express socket.io