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.
在项目所处的目录中运行如下的终端命令,即可将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)
})