zoukankan      html  css  js  c++  java
  • Node.js学习笔记10--Express搭网站(2)

    1.创建路由规则:

    例如要创建/hello的页面:

    在index.js中添加:

    app.get('/hello',funciton( req, res, next ) {

      res.send("The server time is "+ new Date().toString());

    })

    app.get是路由规则创建函数,它接受两个参数,一个路由的路径,另一个参数是一个回调函数,该路由规则被触发时调用回调函数。

    2.路径匹配

    Express还支持更高级的路径匹配模式,例如:

    想要展示一个用户的个人页面,路径为/user/[username]

    app.get('/user/:username',function(req,res){

      res.send('user: '+req.params.username);

    })

    路由规则还支持JS正则表达式。

    3.REST风格的路由规则

    rest意思是: 表征状态转移(Representation State Transfer),它是基于HTTP协议的网络应用的接口风格。

    HTTP协议定义了8种标准风格:

    其中get,post,delete,put是常用的,特点是:

    其中的安全是指: 没有副作用,即请求不会对资源产生变动,连续访问多次所获得的结果不受访问者的影响。

    幂等是指: 重复请求多次与一次请求的效果是一样的。

    express为每种HTTP请求方式都设计了不同的路由绑定函数

    其中:app.all函数支持把所有的请求方式绑定到同一个响应函数,是一个非常灵活的函数。

    4.控制权转移

    express支持同一个路径绑定多个路由响应函数,但当访问任何被这两条同样的规则匹配到的路径时,请求总是被前一条路由规则捕获。(默认情况下是 先来先得

    原因是:express在处理路由规则时,会优先匹配先定义的路由规则,因此后面相同的规则被屏蔽。

    可以通过回调函数的第三个参数next,将路由控制权转移给后面的规则。

    通过调用next(),将路由控制权交给第二个规则,向后传递。

  • 相关阅读:
    第一章:帝国的余晖 AT&T公司
    个人最终总结——2(完成了第3个问题)
    个人最终总结——1(完成了前面2个问题)
    week9:个人博客作业
    week8:个人博客作业
    week7:个人博客作业
    week6:个人博客作业
    将博客搬至CSDN
    top命令
    java并发编程的艺术-第四章笔记
  • 原文地址:https://www.cnblogs.com/shixiaomiao/p/4970065.html
Copyright © 2011-2022 走看看