Node Express:呼叫顺序是否重要?

时间:2016-11-29 07:49:02

标签: node.js express

Node Express文档提供了hello-world example

var express = require('express')
var app = express()

app.get('/', function (req, res) {
  res.send('Hello World!')
})

app.listen(3000)

listen()get()的顺序是否重要? (他们可以互换吗?)如果get()listen()在上述第一次调用后第二次被调用会发生什么?

1 个答案:

答案 0 :(得分:1)

让我们解构一下这个例子:

app.listen(3000)

此行将您的应用程序附加到端口,在本例中为3000.它使您可以通过键入http://localhost:3000来访问它,您通常不希望更改应用程序在durig执行时运行的端口。

app.get('/', function (req, res) {
  res.send('Hello World!')
})

这基本上是一个监听器,当你向/ route发出GET请求时会调用它。当您在浏览器上输入网址时,它会告诉您的应用要回答的内容。

它附加到app对象,无论应用程序是否正在运行,因此可以在侦听之前,之后或在另一个文件中写入。

在您在同一路线上有第二个侦听器的奇怪情况下,其中一个将不会被执行。我建议你自己测试一下,如果你真的想知道哪个优先,这里是一个示例代码:

app.get('/', function (req, res) {
  res.send('Will I be executed?')
});


app.get('/', function (req, res) {
  res.send('or maybe I will?')
});

app.listen(3000)