Tag: socket.io

关于将Node.js和Socket.IO应用程序部署到Nodejitsu的问题

我是Node.js,Socket.IO和Nodejitsu的新手。 我也在我的机器上运行Ubuntu。 在谷歌免费提升支持Node.js和Socket.IO后,我find了Nodejitsu托pipe平台。 他们说很容易部署一个应用程序,但我觉得有点复杂。 这是我所遵循的过程。 使用Nodejitsu设置我的帐户后,我跑了: sudo npm install jitsu -g sudo jitsu install socket.io 我尝试使用以下方式部署应用程序: jitsu deploy 但是我在cmd上得到了两个警告: warn: There is no package.json file in /home/ben warn: Creating package.json at /home/ben/package.json 而柔术则是: prompt: Application name: (ben) prompt: Subdomain name: (cand-ben) prompt: scripts.start: 首先,我不明白这两个警告是什么意思? 我应该在那里创build一个package.json文件吗? 我也尝试在提示符之后的命令行中像这样启动一个脚本:scripts.start: var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, […]

socket.io不传输给浏览器

我似乎有socket.io安装程序,并试图发出一些鸣叫,但他们没有出现在浏览器中。 这是我在控制台中得到的: GET / 304 16ms debug – served static content /socket.io.js debug – client authorized info – handshake authorized LYlpc7dcpLyHCFcKYUJy debug – setting request GET /socket.io/1/websocket/LYlpc7dcpLyHCFcKYUJy debug – set heartbeat interval for client LYlpc7dcpLyHCFcKYUJy debug – client authorized for debug – websocket writing 1:: debug – websocket writing 5:::{"name":"tweets","args":[{"user":"AaronNewport97","text":"You're not your","latitude":51.56764399,"longitude":0.49722754}]} 51.56764399 0.49722754 以下是来自app.js的相关代码: […]

如何在appfog中的node.js中保持活动状态

我有一个长时间运行的插槽,即使在系统闲置时也需要保持活动状态。 为此,我已经尝试了一切,从减less长轮询持续时间到服务器和客户端乒乓消息,但没有什么似乎工作,因为套接字断开一段时间,让我们说1个小时。 但套接字连接需要活着,直到我手动closures它。 我如何做到这一点? 也是最新版本的node.js semms来支持socket.setTimeOut(0),我可以保持套接字打开无限期,但setTimeOut方法似乎是不存在的套接字在我使用的版本,因为它显示方法未定义的错误。 我使用的节点版本是0.8。 对于乒乓消息,我正在使用此代码http://stackoverflow.com/questions/9708604/nodejs-socket-io-connections-dropping-reconnecting 减less长时间的投票时间我已经使用 http://stackoverflow.com/questions/13458943/node-js-tcp-socket-server-on-the-cloud-heroku-appfog 并在连接事件的socket.settimeout http://www.fingersdancing.net/2012/12/nodejs-connection-times-out-after-2.html 任何帮助,将不胜感激:)

防止Websocket垃圾邮件我的console.log

我使用Node.js , Socket.io和Websocket 。 每次我发射一些东西的时候,都会把它写在我的console.log 。 我发出了很多东西,所以我的console.log变得完全无法用于debugging目的。 有什么办法可以防止Websocket在我的控制台上写出所有的事件吗? 以下是一个例子: debug – websocket写作5 ::: {“stuff ….”} debugging – websocket写作5 ::: {“更多的东西….”} debugging – websocket写作5 ::: {“甚至更多的东西….”}

NodeJS:在前端脚本中使用环境variables

我正在编写一个socket.io应用程序,而且每次我推送到heroku时,都不得不在我的前端scripts.js文件中排队。 var socket = io.connect('http://localhost'); 至 var socket = io.connect('http://ersatz-elephant-1337.herokuapp.com/'); 我知道我可以使用process.env.VAR在后端访问这些variables,但我想知道是否有任何方式来编程决定哪些使用我的前端脚本? 我宁愿把脚本放在静态的地方,但也许这是不可能的? 编辑:我不是真的在后端寻找解决scheme…我正在寻找一种方式,我的/public/scripts.js文件可以连接到正确的事情。 我想可能唯一的方法是通过在server.js为前端脚本文件指定一些特殊的东西,而不是静态地提供它,但如果是这样,那么这就是我正在寻找的指令,而不是如何实际访问env vars在服务器上。 对不起,有什么困惑!

广播消息给所有的客户

我已经尝试向所有客户广播一个消息,但没有成功。 标有“ WORKS ”的标志,但仅限一个客户。 我已经试过这些选项:socket.emit socket.broadcast.emit 谢谢

用node.js上传一个多人游戏

我在node.js做了一个游戏并上传了它,它应该是每秒30 – 60帧。 现在我testing它,它运行缓慢..我的意思是在本地networking运行更顺畅 服务器是不是很远..所以任何提示如何使fps更好? 什么是更好的xhr-pooling或websockets ,什么是更快? 游戏是这样设置的xhr-pooling – io.set('transports', ['xhr-polling']); 该游戏托pipe在appfog中 如果需要,我可以发布游戏链接!

为什么io不确定?

我有一个快速的应用程序使用socket.io。 我不清楚客户开始需要什么,所以如果有人能告诉我怎么做,我会很感激。 另外,我不确定我的客户端代码是否正确。 这是我的客户端套接字代码: var socket = io.connect('http://localhost:3000'); var tView = new totalViewModel(); socket.on('connect', function (data) { function loggedIn(e) { e.preventDefault(); var logged = { username: document.getElementById('pEmail'), password: document.getElementById('pWord') }; socket.emit('login', JSONout(logged)); } socket.on('uploadList', function (data) { tView.setNum(JSONin(data).total); ko.applyBindings(tView); }); function logPurchase(e) { e.preventDefault(); var purchObj = { price: document.getElementById('pPrice').value, priceName: document.getElementById('pName').value, entryDate: new Date() […]

有一些方法可以使用Node JSstream式传输照片吗?

我正在创build一个networking聊天,我想给用户select从它的文件系统中select一个图像,并通过stream式分享给聊天室的其他成员。 有一些方法可以做到这一点? 谢谢!

Nodejs,保持套接字io连接在MongoStore中保持活动

在nodejs-express应用程序中,在server.js文件中,我设置了socket-io连接。 它可以很好的做这样的事情 var server = require('http').createServer(app) var io = require('socket.io').listen(server); io.sockets.on('connection', function (socket) { // how can I save globally this 'socket'? }); 我想将这个'socket'全局保存在server.js文件中,这样就可以在项目中的任何地方使用它。 喜欢这个: app.get('/on', function(req, res){ socket.on('test', function (data) { console.log(data); }); }); app.get('/emit', function(req, res){ socket.emit('test', "ciao"); }); 我红色有一种方法来保存会话中的“套接字”连接。 我的会话设置: app.configure(function(){ // …. app.use(express.cookieParser(SITE_SECRET)); app.use(express.session({ secret : ,store : new MongoStore({ mongoose_connection […]