我已经阅读了很多有关Nodejs和Expressjs的帖子,但我仍然不明白这是如何运作的:
这是Express.js的基本Hello World应用程序(取自http://expressjs.com/starter/hello-world.html)。
var express = require('express')
var app = express()
app.get('/', function (req, res) {
res.send('Hello World!')
})
var server = app.listen(3000, function () {
var host = server.address().address
var port = server.address().port
console.log('Example app listening at http://%s:%s', host, port)
})
当我们仍在处理我们最终会绑定到server
的内容时,我们如何使用var server
获取主机和端口?
答案 0 :(得分:3)
因为它是异步的。在定义和初始化server
之后,回调仅在稍后运行。
var server = app.listen(3000, function () {
var host = server.address().address
var port = server.address().port
console.log('Example app listening at http://%s:%s', host, port)
})
正确的缩进有时会有助于看到这一点。