为什么不't通过socket.io发射事件火
Why doesn't emit event fire by socket.io
我使用的是socket.io+express。我想从客户端向服务器发出"start"answers"user_info"事件。但它不起作用。我是这样写的。。。
server.js
var express = require("express");
var http = require("http");
var socket = require("socket.io");
var app = express();
var ejs = require("ejs");
var server = http.createServer(app);
var io = require("socket.io").listen(server);
var redis = require("redis");
var _ = require("underscore");
require("./models/User");
app.get("/",function(req,res){
res.render("index",{});
});
socket.on("start",function(data){
console.log("Started");
});
socket.on("user_info",function(user_info){
var self = this;
var name = user_info.name;
var password = user_info.password;
user.name = name;
user.password = password;
var data = JSON.stringify({name: name,password: password});
});
### client.js
$(document).ready(function(){
var socket = io.connect("http://localhost:8080");
$("#register-btn").on("click",function(data){
$("#notice").html("Registerd");
var name = $("#name").val();
var password = $("#password").val();
var confirmPassword = $("#confirm-password").val();
if (name && (password === confirmPassword)){
// user_info event is works.
socket.emit("user_info",{"name": name,"password": password});
// I wonder why start event does not works.
socket.emit("start",{"name": "yahoo"});
}else{
$("#notice").html("try again");
}
});
});
我不知道为什么"启动"活动并没有被解雇。你知道吗?
您缺少Socket.io 的连接部分
// Noticed I removed the var socket = require('....
var io = require("socket.io").listen(server);
io.sockets.on('connection', function (socket) {
console.log('Client Connected')
socket.on("start",function(data){
console.log("Started");
});
socket.on("user_info",function(user_info){
var self = this;
var name = user_info.name;
var password = user_info.password;
user.name = name;
user.password = password;
var data = JSON.stringify({name: name,password: password});
});
});
您可能想阅读文档@http://socket.io/
相关文章:
- socket.io发射三次
- 通过socket.io发射给特定的人
- WebRTC,socket.io,node.js:无法读取属性'发射'的未定义
- 为什么不't通过socket.io发射事件火
- Socket.io-io.to.emit向所有连接的用户发射
- 事件发射器模式如何在Node,sockets.io中工作
- Socket.io发射两次火
- socket.io:发射按钮's属性值
- Socket.io 发射不起作用,但广播很好
- 将数据追加到所有 Socket.io 客户端发射器
- 节点:建立连接时备份 socket.io 自定义发射器
- NodeJS 套接字 IO 停止随机发射
- Socket.io 聊天应用程序显示检测到的事件发射器内存泄漏.添加了 11 位听众.使用 emitter.setMax
- node.js socket.io发射不工作
- Socket.io发射到不存在的房间
- 使用Socket.IO:服务器没有't接收来自客户端的发射
- socket.io发射到所有不工作的套接字
- Socket.io每次发射都会失败
- 使用套接字的事件发射器内部的事件发射器.io node . js
- 为什么我的socket.io发射没有导致内容刷新