我正在尝试将socket.io与backbone.js集成,所以基本上我有一个节点服务器,它从数据库中获取数据并将数据发送到主干客户端,客户端的模型应该以某种方式检索传入的数据,但我不是现在确定如何将 socket.io 放入模型中,只是在尝试失败后感到困惑。任何专家请启发我将不胜感激!
节点服务器在 url /pics 中向客户端发送数据
app.get('/pics', function(req, res){
db.collection('pics', function(err, collection) {
collection.find().toArray(function(err, items) {
io.sockets.on('connection', function (socket) {
socket.emit('news', items);
});
});
});
});
Backbone 模型中的客户端应该检索发出的数据(该模型适用于正常的 http 数据发送):
window.Pic = Backbone.Model.extend({
urlRoot: "/pics",
idAttribute: "_id",
initialize: function (){},
defaults: {
_id: null,
name: "",
date: "",
}
});
window.PicCollection = Backbone.Collection.extend({
model: Pic,
url: "/pics"
});