Socket.configure未定义不是函数错误
注意:我正在使用Mac OS 10.10 Yosemite
重要提示:其他问题和答案都不适用于我。
我正在学习一个教程,以便我可以有一个多人游戏。 有一个文件,我必须下载,其中有一个game.js文件,我需要将此代码添加到:
注意:我正确地在正确的目录中下载了socket.io。
var util = require("util"), io = require("socket.io").listen(80); var socket, players; function init() { players = []; socket = io.listen(8000); socket.configure(function() { socket.set("transports", ["websocket"]); socket.set("log level", 2); }); }; init();
但是,当我运行节点game.js ,我得到一个如下所示的错误:
注意: Robhawks-mozzilla-festival-92336f2文件夹是其中包含所有文件的文件夹
为什么socket.configure搞砸了? 另外,我该如何解决?
当socket.io
转到版本1.0时, .configure()
被删除。 我猜你正在使用的教程是使用旧版本(0.9),但你已经安装了1.0。
最好将代码基数移到1.0,因为它是最新的。 configuration应该作为服务器初始化的一部分来完成:
var socket = require('socket.io')({ transports : [ 'websocket' ], ... });
更多信息在这里 。
但是,由于您正在学习一个教程,所以使用旧版本的socket.io
首先启动并运行起来可能会更容易一些,一旦您熟悉了它,就转到1.0。 在这种情况下,安装旧版本:
$ npm install socket.io@0.9
Looging socket.io v1.0日志级选项被删除 。 因此,对于日志logging,必须使用debugging模块来启动程序。
- 安装debug:
npm install debug -S
- 然后运行程序:
DEBUG=* node entry_file.js