NODE.JS day04

1.请求的方式

post 只能使用表单提交的方式(现阶段)

get 可以通过表单提交,也可以在浏览器地址栏直接输入url

区别:post不会在地址栏暴露输入的数据,相对安全。get会在地址栏显示输入的信息,相对不安全。

一般对于一些安全性较高的表单用post,例如登录,注册...

对于一些安全性较低的表单使用get,例如搜索关键字,查询...

post执行速度相对于get,比较慢。

 

2.路由中的参数

服务器端配置路由参数

app.get('/list/:lid/:uname',()=>{

//req.params 获取传递参数对象

});

练习:

路由:购物车 /shopping get

把商品的价格(price)和商品的数量(num)以参数的形式传递给服务器,把接收的参数显示在浏览器中。

NODE.JS day04

NODE.JS day04

3.路由器

路由器是把相关的路由归纳到一起

用户模块:注册、登录、列表、修改、删除/user/delete、检索

商品模块:列表、详情、修改、删除/product/delete

把商品路由器挂载到 /product下

路由器目的是便于管理路由最终要用于web服务器

 

4.require引入第三方模块机制

首先查找当前目录下是否有node_modules,如果没有往上一级目录寻找,直到根目录。

 

5.中间件

中间件就是express的函数,作用是为主逻辑所服务。中间件不能单独使用,必须要配合其它中间件或路由实现一个完整的业务逻辑。

中间件拦截路由

NODE.JS day04 app.use(fn);   拦截所有的路由

app.use('/list',fn);   拦截特定路由

 

练习:

使用中间件实现计数器

初始化一个变量用于记录访问次数——0

先创建路由。在前置中间件中访问次数+1

在路由中(/user),把+1的结果响应给浏览器

 

 

 

 

中间件分类

应用级的中间件  app.use(fn)

路由级的中间件——路由器的使用

app.use('/user',user)

内置的中间件

第三方的中间件

错误级的中间件(课后自学)

 

①内置的中间件

sendFile只有在请求的时候,才会发送文件到浏览器

app.use(express.static('目录路径'));

注意:可以同时托管多个静态目录,如果两个目录中有相同文件名称,显示第一个目录下的文件。

 

②body-parser中间件的使用

引入中间件  const bodyParser=require('body-parser');

调用中间件  app.use(bodyParser.urlencoded({

extended:false

}));

获取post请求中表单的数据

req.body

 

课后任务

创建一个注册文件register.html(用户,密码,邮箱,电话);把这个文件作为静态资源托管,点击提交,使用post请求将数据发送给服务器;服务器使用body-parser中间件获取数据,发送到浏览器“注册成功,你好+用户名”

预习MySQL