sis*_*sko 18 node.js express socket.io
我今天开始学习Node.js而且我有点陷入困境.
在这个例子之后,当我尝试执行js文件时出现以下错误:
Warning: express.createServer() is deprecated, express
applications no longer inherit from http.Server,
please use:
var express = require("express");
var app = express();
Socket.IO's `listen()` method expects an `http.Server` instance
as its first parameter. Are you migrating from Express 2.x to 3.x?
If so, check out the "Socket.IO compatibility" section at:
https://github.com/visionmedia/express/wiki/Migrating-from-2.x-to-3.x
info - socket.io started
Run Code Online (Sandbox Code Playgroud)
我不知道如何解决这个问题.
UPDATE
Bill的修改代码导致的错误:
/home/sisko/NodeJS/nodeSerialServer/serialServer.js:24
var app = express()
^
ReferenceError: express is not defined
at Object.<anonymous> (/home/sisko/NodeJS/nodeSerialServer/serialServer.js:24:12)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.runMain (module.js:492:10)
at process.startup.processNextTick.process._tickCallback (node.js:244:9)
Run Code Online (Sandbox Code Playgroud)
Bil*_*ill 36
在第express2版和第3版之间初始化应用程序的方式发生了变化.此示例基于版本2,但看起来您已经安装了版本3.您只需更改几行即可socket.io正确设置.改变这些行:
var app = require('express').createServer(),
io = require('socket.io').listen(app),
scores = {};
// listen for new web clients:
app.listen(8080);
Run Code Online (Sandbox Code Playgroud)
对此:
var express = require('express'),
app = express()
, http = require('http')
, server = http.createServer(app)
, io = require('socket.io').listen(server);
// listen for new web clients:
server.listen(8080);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13087 次 |
| 最近记录: |