Node.js 将节点与socketio一起使用时出现的问题
我无法使用带有套接字IO的nodejs 我正在使用windows机器,下载了节点可执行文件,正确设置了环境变量 通过这种方式,我可以在命令上运行一个简单的节点服务器 然后我使用npm安装socketio 甚至我也安装了socketio(路径为c:\Aakash\Users\nodemodules…) 现在,当我使用一个示例代码来运行装备了socket的节点服务器时,它在socketio js中抛出错误,表示“第1324行的indexOf未定义” 这个错误出现在我写的server.js中的那一行Node.js 将节点与socketio一起使用时出现的问题,node.js,socket.io,Node.js,Socket.io,我无法使用带有套接字IO的nodejs 我正在使用windows机器,下载了节点可执行文件,正确设置了环境变量 通过这种方式,我可以在命令上运行一个简单的节点服务器 然后我使用npm安装socketio 甚至我也安装了socketio(路径为c:\Aakash\Users\nodemodules…) 现在,当我使用一个示例代码来运行装备了socket的节点服务器时,它在socketio js中抛出错误,表示“第1324行的indexOf未定义” 这个错误出现在我写的server.js中的那一行
require(“socket.io”)代码>
可能无法执行socket.io
困惑:
1) socketio文件位于Users\NodeModule中的某个位置。。。
它将如何获取require语句中的socketio
2) 同样地,在客户端,我需要socket.io.js,这也在用户内部。。目录,但在这里我复制了socket.io.js并将其放在clientfile.html附近
我在socketio的目录结构中做错了吗?
客户机文件附近应包含在何处以及哪些文件
我搜索了上述问题,但没有成功
谢谢。首先
答案是1:
1.创建项目文件夹(任意位置)
2.在cmd中导航您的项目主管
3.安装socket.io(npm安装socket.io)
安装socket.io后,您将在项目文件夹中找到node_模块目录
答案2:
现在,您的客户端将获取socket.io文件(只包括src='/socket.io/socket.io.js')
你用过这样的东西吗
如果使用http
模块,则
var app = require('http').createServer(handler)
,
io = require('socket.io').listen(app)
, fs = require('fs')
app.listen(1324);
function handler (req, res) {
// your handler
}
我认为您应该使用module了解有关的更多详细信息。如果您安装了一个全局模块(npm install module-g),然后您将尝试将其安装到项目文件夹中(不带-g),它将不会再次安装,因为它已经安装。但如果没有全局安装,您可以在多个文件夹中安装任意次数。
有关节点如何加载模块的详细信息,您可以阅读,并且我完全按照您所说的做了尝试,但是socketio不在我当前的节点目录中,它位于Users\node\u modules中的某个位置。。。还在搜索,顺便说一句,我成功地运行了server.js,我只是从用户那里复制了节点模块。。。到nodejs安装路径。但现在的问题是运行客户端html可能是我还不清楚这一点。我从来没有能够连接到服务器,它显示,连接关闭在客户端的套接字中。使用express有什么好处吗(我将在其他框架上再添加一层)?