我正在尝试从server.js发出一个套接字并在我的index.html中处理它。 这是我的server.js代码:
io.sockets.on("connection",function(socket){
socket.on("send",function(data){
mongodb.connect("mongodb://127.0.0.1:27017/myDatabase",function(err,db){
if(err) throw err;
var to_be_inserted = {name: data.name,content: data.content};
db.collection("chat").insert(to_be_inserted,function(err,objects){
if(err) throw err;
var cursor = db.collection("chat").find();
cursor.toArray(function(err,docs){
socket.emit("data_to_be_printed",docs);
});
});
})
})
})
在index.html中,我只是尝试在套接字被触发时发出警报:
socket.on("data_to_be_printed",function(cursor){
alert("at least this works");
});
但是我没有得到警告。 find()方法确实在我的控制台中返回至少5个对象。
更新 发送套接字会发出,数据会插入到数据库中。唯一的问题是data_to_be_printed套接字没有被删除
更新 我在index.html中创建套接字的方式是:
<script src="http://127.0.0.1:1337/socket.io/socket.io.js"></script>
<script>
var socket = io.connect("127.0.0.1:1337");
</scrip>
答案 0 :(得分:0)
原来我忘记重启我的server.js。