在socket.io网页上Get Started: Chat application
,位于:
http://socket.io/get-started/chat/
有这个代码:
var app = require('express')();
var http = require('http').Server(app);
Run Code Online (Sandbox Code Playgroud)
可以像这样更清楚地重写:
var express = require('express');
var http = require('http');
var app = express();
var server = http.Server(app);
Run Code Online (Sandbox Code Playgroud)
socket.io示例使用http.Server()来创建服务器.然而,app.listen()的快速文档显示了使用http.createServer(app)
以下命令创建服务器的示例:
app.listen()
绑定并侦听给定主机和端口上的连接.此方法与节点的http.Server#listen()相同.Run Code Online (Sandbox Code Playgroud)var express = require('express'); var app = express(); app.listen(3000);
express()返回的应用程序实际上是一个JavaScript函数,旨在作为回调处理请求传递给节点的HTTP服务器.这允许您轻松地为应用程序的HTTP和HTTPS版本提供相同的代码库,因为应用程序不会从这些继承(它只是一个回调):
Run Code Online (Sandbox Code Playgroud)var express = require('express'); var https = require('https'); var http = require('http'); var app = express(); http.createServer(app).listen(80); https.createServer(options, app).listen(443);
app.listen()方法是以下的便捷方法(如果您希望使用HTTPS或同时提供两者,请使用上述技术):
Run Code Online (Sandbox Code Playgroud)app.listen = function(){ var server = http.createServer(this); return server.listen.apply(server, arguments); };
http.createServer(app)
和http.Server(app)
?之间有什么区别?http文档没有帮助.
msc*_*dex 27
没有区别.http.createServer()
只做一件事:它在http.Server()
内部调用并返回结果实例.
归档时间: |
|
查看次数: |
22426 次 |
最近记录: |