0

我已经按照这个指令http://crossbar.io/docs/Getting-started-with-NodeJS/并且我可以通过 访问前端localhost:8080,但是后端的 hello.js 似乎没有被执行。这是我运行后的日志crossbar start

2014-10-30 23:52:33+0700 [控制器 48946] 日志已打开。

2014-10-30 23:52:33+0700 [控制器 48946] ============================== Crossbar.io = ==============================

2014-10-30 23:52:33+0700 [控制器 48946] Crossbar.io 0.9.9 开始

2014-10-30 23:52:34+0700 [控制器 48946] 使用 KQueueReactor 反应器在 CPython 上运行

2014-10-30 23:52:34+0700 [控制器 48946] 从节点目录 /Users/toannguyen/Documents/Local-Repo/crossbar-hello/.crossbar 开始

2014-10-30 23:52:34+0700 [控制器 48946] 从本地配置“/Users/toannguyen/Documents/Local-Repo/crossbar-hello/.crossbar/config.json”开始

2014-10-30 23:52:34+0700 [控制器 48946] 在环境中未检测到 WAMPlet。

2014-10-30 23:52:34+0700 [控制器 48946] 启动 ID 为“worker1”的路由器 ..

2014-10-30 23:52:35+0700 [路由器 48950] 日志已打开。

2014-10-30 23:52:36+0700 [路由器 48950] 在 CPython 下使用 KQueueReactor 反应器运行

2014-10-30 23:52:36+0700 [路由器 48950] 进入事件循环..

2014-10-30 23:52:36+0700 [控制器 48946] ID 为“worker1”和 PID 48950 的路由器已启动

2014-10-30 23:52:36+0700 [控制器 48946] 路由器 'worker1': 领域 'realm1' 开始

2014-10-30 23:52:36+0700 [控制器 48946] 路由器“worker1”:角色“role1”在领域“realm1”上启动

2014-10-30 23:52:36+0700 [路由器 48950] 站点从 8080 开始

2014-10-30 23:52:36+0700 [控制器 48946] 路由器“worker1”:传输“transport1”已启动

2014-10-30 23:52:36+0700 [控制器 48946] 启动 ID 为“worker2”的访客 ..

2014-10-30 23:52:36+0700 [控制器 48946] GuestWorkerClientProtocol.connectionMade

2014-10-30 23:52:36+0700 [控制器 48946] ID 为“worker2”且 PID 为 48951 的访客已启动

2014-10-30 23:52:36+0700 [控制器 48946] 警告:无法监视目录的更改 - 功能 DirWatcher 不可用

2014-10-30 23:52:36+0700 [控制器 48946] 来宾“worker2”:开始

2014-10-30 23:52:36+0700 [访客 48951] 在环境 id 4347382592 中执行 execvpe /usr/bin/node ['/usr/bin/node', 'hello.js']

2014-10-30 23:52:36+0700 [Guest 48951]:回溯(最近一次通话最后):

2014-10-30 23:52:36+0700 [访客 48951] 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/twisted/internet/process.py”,第 403 行,在 _fork 中

2014-10-30 23:52:36+0700 [Guest 48951] 路径、uid、gid、可执行文件、args、环境)

2014-10-30 23:52:36+0700 [访客 48951] 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/twisted/internet/process.py”,第 453 行,在 _execChild

2014-10-30 23:52:36+0700 [访客 48951] os.execvpe(可执行文件,参数,环境)

2014-10-30 23:52:36+0700 [来宾 48951] 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py”,第 355 行,在 execvpe

2014-10-30 23:52:36+0700 [访客 48951] _execvpe(文件,参数,环境)

2014-10-30 23:52:36+0700 [访客 48951] 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py”,第 370 行,在 _execvpe

2014-10-30 23:52:36+0700 [访客 48951] func(file, *argrest)

2014-10-30 23:52:36+0700 [Guest 48951] OSError: [Errno 2] 没有这样的文件或目录

2014-10-30 23:52:36+0700 [控制器 48946] GuestWorkerClientProtocol.connectionLost:[失败实例:回溯(无帧失败)::进程以可能的错误条件结束:进程以退出代码 1 结束。 ]

2014-10-30 23:52:36+0700 [控制器 48946] GuestWorkerClientProtocol:访客以错误 1 ​​结束

2014-10-30 23:52:36+0700 [控制器 48946] 访客因错误而兴奋 [失败实例:回溯(无帧失败)::进程已以可能的错误条件结束:进程以退出代码 1 结束。 ]

然后虽然前端继续在频道'onhello'上发布,但服务器没有收到并记录任何内容。有什么错误,谁能帮我解决这个问题?谢谢。

4

1 回答 1

0

Crossbar.io 找不到 NodeJS 可执行文件。它需要config.json.

例如,在 Ubuntu 上,NodeJS 安装在 下/usr/bin/nodejs,并且要使其与默认生成的 Crossbar.io 节点配置一起工作,您需要执行以下操作:

sudo ln -s /usr/bin/nodejs /usr/bin/node

所以你得到

oberstet@ubuntu1404:~/temp/node4$ ls -la /usr/bin/node
lrwxrwxrwx 1 root root 15 Okt 31 09:35 /usr/bin/node -> /usr/bin/nodejs
oberstet@ubuntu1404:~/temp/node4$ ls -la /usr/bin/nodejs 
-rwxr-xr-x 1 root root 1462424 Mär 27  2014 /usr/bin/nodejs
于 2014-10-31T08:37:46.063 回答