问题标签 [nowjs-sockets]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - nowjs/node-proxy 无法在 ubuntu 11.10 上安装
我正在尝试在 ubuntu 11.10 上安装 now.js(如果重要的话,可以在带有 wubi 的 Windows 上运行)。我已经很好地下载并安装了 node、npm 和 socket.io,但sudo npm install now
由于某种原因失败了。我尝试过使用和不使用 sudo,尝试全局安装它,同样的错误。Make安装得很好...... node-proxy包有问题吗?对于它的价值,尝试npm install node-proxy
会产生类似的错误。
节点版本 0.6.2
npm 版本 1.0.106
ubuntu 11.10 (windows with wubi)
当我现在尝试安装时,日志显示:
javascript - 在客户端使用 now.js 的未定义函数
我正在使用 now.js 和 nano(CouchDB 库)来填充选项。
服务器:
客户:
在客户端上,它对第一次调用说“TypeError:'undefined' is not a function”。在 .click()-Function 中一切正常。
now.js 在 application.js 之前加载。我也尝试了 $(now).ready() ,但它没有用。
有什么问题?
node.js - 安装 Socket.io 库
我在安装 Socket.io 库时遇到问题
我的服务器:
- SULinux 2.0 版(内核 2.6.18-194.el5PAE)
- nodeJS 版本为 v0.4.5
- NPM 版本为 1.0.106
我尝试使用以下命令安装 socket.io:
这给出了以下错误消息:
为什么会出现这个错误?
php - codeigniter nodejs 和 nowjs 集成
我正在尝试将 nodejs 和 nowjs 与 codeigniter 框架集成,因为我没有时间重写整个站点,所以我想检查用户是否已登录。我正在使用 ion_auth 并将会话存储在 db 中。
客户端js:
这是nodejs服务器代码:
编辑:*稍微简化一下,并从客户端 js 获取会话 cookie *
这是nodejs调用的控制器:
它正在工作,我可以将 user_data 从数据库中的会话记录到控制台,并正确调用everyone.now.receiveMessage 函数。
我对此有三个问题:
1) 在 sc_sessions db 表中插入了一些行,其 session_id 为空,但 user_data、user_agent 和 ip 为 0.0.0.0。每次提交表单时一行。
是什么原因造成的,我该如何解决?
我知道 ajaxcalls 和 codeigniter 会话存在问题。看到这个线程:
有没有办法查看请求是否是使用 websockets 发出的?
2)检查用户是否登录的最佳方法是什么?例如 if 语句,您可以在其中检查查询是否返回任何内容或是否有更好的方法?
3)有没有更好的方法来做到这一点?
任何帮助表示赞赏,因为我坚持这一点。
乔治
编辑:从命令行调用脚本会导致它创建一个新会话。通过扩展会话类来防止它。
应用程序/库/MY_Session.php
javascript - 为什么我不能在nowjs中扩展每个人的口袋?
我正在尝试在pocket
nowjs 的每个人中提供功能。我想_.extend
通过每个人的口袋来做到这一点,即everyone.now
。由于某种我无法理解的原因,_.extend
未能在客户端正确提供该功能。
这是我当前的代码:
在服务器端和客户端,我都可以做得now.foo()
很好。另一方面,now.bar()
因为now.bar
未定义而失败。客户端和服务器端都是这种情况。我试图在服务器端检查是否存在,如上最后一行所示。但是,此行记录undefined
.
Underscore 的extend
功能(显然)确实适用于其他对象,所以我猜它与 nowjs 使用的“神奇名称空间”有关。
为什么扩展不起作用,everyone.now
我怎样才能让它起作用?
编辑2:我对代理进行了更多研究。似乎通过传递变量名称来设置代理上的属性不起作用。我删除了我的第一个编辑,因为这个测试用例更加缩小了。
为什么这不起作用?这是一个错误吗?(大多数时候我自己问这个我知道不是,但这真的让我一无所知......)
日志结果:
显然,proxy[ key ] = "bar";
不会导致set
在代理上被调用。这是为什么?
node.js - 在 Nodejs 上对并发连接进行基准测试?
我正在玩nodejs,并希望获得一些关于如何使用nowjs、socket.io等在nodejs中对websocket上的并发连接进行基准测试的指南。
javascript - 使用 jQuery 安全性获取会话 cookie
使用 jquery 获取 cookie 并通过 nowjs 函数发送它而不是通过服务器上的请求获取它是否存在任何安全问题?
对比
javascript - Expressjs 与 connect-mysql-session
我正在使用带有 expressjs 的 connect-mysql-session 模块。对于对服务器的每个请求,我得到这个:
为什么要这样做?
我也为每个请求设置了大约 8 个 cookie(connect.sid),我认为它是为每个资产设置的,比如 js、css 和图像。为什么要设置这么多次?是应该的吗?
这是我的配置:
问候
javascript - 使用 NowJS/Node.js 实时跟踪在线/离线状态?
我有一个用户登录并在所有页面上连接到 NowJS 的站点。我希望能够近乎实时地跟踪他们的状态(在线/离线),但我不确定最好的方法。我最初的想法是只使用连接和断开连接事件,但这不起作用,因为每次用户进入新页面时都会触发这些事件(因为在新页面加载时套接字连接关闭)。
我已经让它有点工作了,我在断开事件的数据库条目中为该用户记录了一个时间戳,然后当连接事件触发时,我检查他们是否在过去 30 秒内访问了该站点。如果他们没有,我可以假设他们正在开始一个新的会话。在断开连接事件中,我使用 setTimeout 查看他们在 30 秒后是否仍然在线,如果没有,则将其状态设置为离线。
虽然这主要是可行的,但它似乎有点 hacky 并且有几个边缘情况问题可能是有问题的(更不用说您将在每个页面视图上都有一个新的超时服务器端的事实)。有没有更好的方法来做到这一点,我只是忽略了?
node.js - 用于生产的 Nodejs 网络服务器
对常见问题的一点更新。从当前版本的 Nodejs v0.6.5 开始,在生产中将其作为 Web 服务器运行是否安全?我真的想跳过使用 nginx 例如代理的步骤。我将使用 Expressjs、nowjs、gzippo。并且 nginx 还不支持 websockets,而且通过 ssl 设置 socket.io 有点困难。除了更好地为静态文件提供服务之外,nginx 还有其他好处吗?
关于这个问题有什么建议吗?如果可以作为网络服务器运行,还有其他值得考虑的模块吗?