3

我在 Windows 托管的 TurnkeyLinux 上的 VirtualBox 中使用 node.JS。我按照这里的说明进行操作。node.JS 位于 /root/node 中。虽然我可以成功运行简单的示例,但我很难弄清楚某些事情,因为我通常不是 Linux 人。我想使用socket.io。

  1. 我使用 git 管理安装 node.JS 本身,并使用 Express 和 Socket.IO 进行了尝试。(例如 git clone git://github.com/LearnBoost/Socket.IO.git)。它似乎有效,但我在任何地方都找不到那个东西!调用 git 时位于 /root/node 中,期待 lib 文件夹中的更改...

  2. node.JS 使用的是 CommonJS 模块系统。在 Socket.IO 示例io = require('../')中用于导入 Socket.IO,这对我来说看起来很奇怪。网络上的其他示例指的是“./Socket.IO-node”。由于模块只是遵循某些规则的 JS 文件,因此我希望像这样的文件的路径,因为我在 /root/node/lib 中找到了 http.js。顺便看看 server.js 示例:是否有某种原因将 var 用于 http,而不用于其余变量(url、fs、io、sys)?

  3. 在客户端,“如何使用”Socket.IO 的第一行是:io.setPath(...). 页面上的其他任何地方都没有提到 setPath。它应该指向哪里,相对于什么?

  4. 我没有找到有关使用 shell 停止/重新启动节点的信息。可能它是如此明显,以至于它从未在任何地方提及;)

感谢您的帮助。

4

1 回答 1

0
  1. 如今,Turnkey-Core 附带的 git 版本已经过时了。也许这会引起问题。我在 Windows 和 WinSCP 上使用我的 git ;)

  2. 默认情况下使用 index.js 有一种内置的自动性,就像 web 服务器上默认使用 index.html 一样。所以'../'指向父文件夹中的index.js,然后导出socket.io的监听器。Guillermo Rauch 现在已经在 socket.io 文件夹中放了一个 index.js,所以像 './lib/socket.io/' 这样的东西正在工作。请注意,有一些示例,例如 './socket.io/socket.io.js',但由于某些充分的原因,socket.io.js 不再存在。
    当然 var 用于所有变量。我已经将逗号视为分号。也许我应该改变我的屏幕分辨率;)

  3. 看这个例子就很清楚了。setPath 指向 socket.io.js 和它的 lib 目录所在的文件夹,相对于使用它的 html 文件。这是闪存插座工作所必需的。

  4. 好吧,事情没那么简单。您可以使用 'ps ux' 查找 PID,然后使用 PID 'kill' 进程。更好的方法是使用暴发户。或者你通过代码使用自动重启来做到这一点。

于 2010-08-25T09:10:32.707 回答