Tag: express.io

MemoryStore express.io的替代软件

在生产模式下运行节点js时,会logging此警告: Warning: connection.session() MemoryStore is not designed for a production environment, as it will leak memory, and will not scale past a single process. 做了一个简短的研究,我发现我应该使用其他替代方法来传递会话,通过express-session-mongo或express-session-redis 。 我的问题: 这个解决scheme是为expressJs使用express.io而devise的吗? 有没有解决scheme来解决这个问题,而不使用其中的一个? 正如你所看到的,使用其中的一个将迫使我安装mongo或redis,这在我的情况下是不好的。 谢谢 !

MEAN栈:想知道api.js和crud.js

我今天正在研究MEAN栈,所以我做了一些示例应用程序的指导。 我几小时前编写了“Bookshelf”应用程序,这是由谷歌云服务提供的,所以我应该深入研究示例代码,以了解它是如何工作的。 整个源代码: https : //github.com/GoogleCloudPlatform/nodejs-getting-started/tree/master/2-structured-data 示例应用程序: http : //mymongo-1165.appspot.com/books 书籍/ api.js router.get('/', function list(req, res) { model.list(10, req.query.pageToken, function(err, entities, cursor) { if (err) { return handleRpcError(err, res); } res.json({ items: entities, nextPageToken: cursor }); }); }); 书籍/ curd.js router.get('/', function list(req, res) { model.list(10, req.query.pageToken, function(err, entities, cursor) { if (err) { return […]

在断开触发之前检查客户端重新连接

所以我试图对我的在线玩家进行实时展示,除了一个问题之外,它的运作效果很好。 当我的应用程序侦听断开连接时,看起来页面刷新触发了这个function,并且所述播放器被注销。 app.io.route("disconnect", function(req,res) { db.query("UPDATE player_data SET online=0 WHERE id="+mysql.escape(req.session.user)); req.io.broadcast("event", {msg:req.session.username+" has logged out!"}); app.io.broadcast("reloadXY"); req.session.destroy(); }); 为什么页面刷新触发这个function? (我知道这是这个函数,因为玩家注销的唯一方式是通过注销链接)我怎样才能让它忽略页面刷新,并只捕获closures浏览器等断开连接? 编辑:我如何“ping”重新连接事件,以便我可以检查页面是否重新加载与closures? 重新加载将有一个即时重新连接,所以我只需要检查重新连接。 我只是不知道如何!

通过express.io连接客户端

我正在开发一个简单的聊天应用程序,使用node.js和express.io 我想一直显示连接的客户端列表(或在线聊天)。 在express.io的文档中 ,一旦新客户进入房间,如何“获取”连接的客户列表,没有明确的方法,即只有“广播”而不是“获取”。 有人做过这个? 任何线索都会非常有帮助。 谢谢! 编辑: 在尝试@ jibsales的答案后。 我想我们几乎在那里。 客户回报我的不是客户的实际数组,而是这一个: [ { id: 'OWix3sqoFZAa20NLk304', namespace: { manager: [Object], name: '', sockets: [Object], auth: false, flags: [Object], _events: [Object] }, manager: { server: [Object], namespaces: [Object], sockets: [Object], _events: [Object], settings: [Object], handshaken: [Object], connected: [Object], open: [Object], closed: [Object], rooms: [Object], roomClients: [Object], […]

Express memory.js bug,@ 3.4.8

有时当我重新加载页面时,服务器正在给出这个错误。 当我重新启动服务器,它的工作,但一段时间后,再次给同样的错误。 我只在会话中存储user_id 。 另外我正在使用Express.Io Project/node_modules/express.io/node_modules/express/node_modules/connect/lib/middleware/session/memory.js:46 expires = 'string' == typeof sess.cookie.expires ^ TypeError: Cannot read property 'expires' of undefined at Project/node_modules/express.io/node_modules/express/node_modules/connect/lib/middleware/session/memory.js:46:47 at process._tickCallback (node.js:419:13) App.js app.configure(function() { app.use(express.logger('dev')); app.use(express.cookieParser()); app.use(express.session({ secret: 'donkey', cookie: { maxAge: 12 * 3600000 // 12 hours }})); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: true })); }); Express版本: 3.4.8连接版本: 2.12 ../middleware/session/memory.js 同样的问题: https […]

用express.io转换实时数据的angular度控制器

我是新来的express.io.我有一套代码运行在socket.io与node.js和angular度在前端没有问题。我已经创build了服务器,它发出一个数据的间隔为1000ms.Sample与客户端交互的服务器的代码是 var serverjson = [ {"Product": "REL", "BBP": "10", "BSP": "10.2", "LTP": "10.1" }, {"Product": "BEL", "BBP": "20", "BSP": "20.4", "LTP": "20" }, {"Product": "MTL", "BBP": "50", "BSP": "50.5", "LTP": "50.1" }, {"Product": "BSL", "BBP": "100", "BSP": "101", "LTP": "100.2" } ]; // define interactions with client app.io.route('ready', function(req){ //send data to client setInterval(function(){ for(i=0;i<serverjson.length;i++) […]