Kwa*_*ang 0 http node.js express socket.io server
我只是尝试使用'Socket.io'进行初始设置,文档说下面的代码
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
server.listen(80);
Run Code Online (Sandbox Code Playgroud)
这是我的原始代码.
var app = require('express')();
app.listen(80);
Run Code Online (Sandbox Code Playgroud)
两者有什么区别?具体是2个问题.
我查了node.js和express.js的文件,但无法理解......
我非常感谢你的全面解释......
您的原始代码使用Express为您创建HTTP服务器.您可以执行app.listen()的原因是因为它还返回服务器实例,因此它本质上是一种方便的方法:
app.listen = function() {
var server = http.createServer(this);
return server.listen.apply(server, arguments);
};
Run Code Online (Sandbox Code Playgroud)
示例中的初始设置是以下内容的简写:
var http = require('http');
var server = http.createServer();
var express = require('express');
var app = express();
var socketio = require('socket.io');
server.on('request', app);
var io = socketio(server);
server.listen(80);
Run Code Online (Sandbox Code Playgroud)
在此示例中,您将为Web套接字创建新的连接服务器,并自行将其集成到http服务器中.您app作为Server的参数传递的原因是,Express应用程序优先于典型http请求的套接字服务器.
| 归档时间: |
|
| 查看次数: |
101 次 |
| 最近记录: |