node.js中的Express

925 阅读2分钟

1.什么是Express?

官方给出的概念 :Express是基于Node.js平台,快速,开放,极简的web开发框架 Express的本质:就是npm上面一个第三方创建的包,提供了快速创建web服务器的便捷方法.

(其实Express的作用Node.js内置的http模块类似, 都是专门用来创建web服务器的,但是Express比起http更加简介,Express是基于和http模块进一步封装出来的能够极大的提高开发效率,两者的关系类似于web Api和jQuery的关系.)

2.Express能做什么?

  • Web网站服务器:专门对外提供Web网页资源的服务器.
  • Api接口服务器:专门对外提供Api接口的服务器. 使用Eepress,我们可以方便,快速的创建Web网站的服务器或Api接口的服务器.

3. Express的基本使用.

3.1 安装Express.

Snipaste_2021-10-09_16-00-18.png

在项目所处的目录中运行如下的终端命令,即可将express安装到项目中使用:

3.2 创建基本的Web服务器,代码如下:

1.导入express
const express=require('express')
2.创建web服务器
const app=express()

3.调用app.listen(端口号,启动成功后的回调函数),启动服务器
app.listen(80,()=>{
console.log('express server running at http://127.0.0.1')
})

3.3 监听GET和POST的请求.

  • 通过app.get()方法,可以监听客户端的GET请求,具体的语法格式如下:
app.get('请求的URL',function(req,res){/*处理函数*/})
  • 通过app.post()方法,可以监听客户端的POST请求,具体的语法格式如下:
app.post('请求的URL',function(req,res){/*处理函数*/})

3.4 把内容响应给客户端.

通过res.send()方法,可以把处理好的内容发送给客户端:

app.get('/user',(req,res)=>{
   //向客户端发送JSON对象
   res.send({name:'小明',age:20})
})
app.post('/user',(req,res)=>{
   //向客户端发送文本内容
   res.send('请求成功!')
})

3.5 获取URL中携带的查询参数.

  • 通过req.query对象,可以访问到客户端通过查询字符串的形式,发送到服务器的参数:
app.get('/',(req,res)=>{
    //req.query默认是一个空对象
    //客户端使用?name=ls&age=20这种查询字符串的形式,发送到服务器传递参数
    //可以通过req.query对象访问到,例如:req.query.name   req.query.age
   console.log(req.query)
})
  • 通过req.params对象,可以访问到URL中,通过:匹配到的动态参数:
app.get('/user/:id',(req,res)=>{
    //req.params默认是一个空对象
    //里面存放着通过:动态匹配到的参数值
   console.log(req.params)
})