express.js4.0的路由学习以及node.js实现express框架的app.use、app.get、app.post的区别

//express.js的路由Router学习

Router是express4.0新加入的功能,它就像是一个迷你的应用程式,可以让应用程式内部的路由编写更方便、更有弹性。

 

//app.get与app.use区别

app对象一般用来表示express程序,通过调用express模块导出的顶层express()方法来创建。

区别:

app.use(path,callback)中的callback既可以是router对象,也可以是函数。

app.get/post(path,callback)中的callback只能是函数。

理解:

将app.get()看作是app.use的特定请求(get)的简要写法,例子如下:

var express = require("express");

var app =express;

app.get("/hello",(req,res)=>{

    res.send("hello ");

               })

与下面等同

var express = require("express");

var app = express();

var router = express.Router();

router.get("/",(req,res=>{

res.send(“hello”)

}))  //一般将此部分单独放在routers文件夹中

app.use("/hello",router)

也即:路由规则是app.use(path,router)定义的,router代表一个由express.Router创建的对象,在路由对象中可以定义多个路由规则。

当我们的路由只有一条规则时,可直接接一个回调函数用app.get简写;当一个路径有多个匹配规则时,使用app.use(path,router),router放在一个单独的文件里面配置多个规则。

猜你喜欢

转载自www.cnblogs.com/zyl0123/p/11489864.html