express
初识Express
(1)Express概述
什么是 Express
官方给出的概念:Express是基于Node.js平台,快速、开放、极简的Web开发框架。
通俗的理解:Express的作用和Node.js 内置的 http模块类似,是专门用来创建Web服务器的。
Express的本质:就是一个npm上的第三方包,提供了快速创建Web服务器的便捷方法。
Express的中文官网: http://www.expressjs.com.cn/
2)进一步理解Express
不使用Express也可以使用Node.Js提供的原生http模块。
但是http 内置模块用起来很复杂,开发效率低。Express是基于内置的
http模块进一步封装出来的,能够极大的提高开发效率。Express是基于http 内置模块进一步封装出来的。
3)Express能做什么呢
对于前端程序员来说,最常见的两种服务器,分别是:
Web 网站服务器:专门对外提供 Web 网页资源的服务器。 API接口服务器:专门对外提供API接口的服务器。
使用Express,l我们可以方便、快速的创建Web 网站的服务器或API接口的服务器。
(2)Express的基本使用
1)安装Express
npm i express@4.17.1
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)监听GET请求
通过app.get()方法,可以监听客户端的GET请求,具体的语法格式如下:
// 参数1:客户端请求的URL地址
// 参数2:请求对应的处理函数
// req:请求对象(包含了与请求相关的属性与方法)
// res:响应对象(包含了与响应相关的属性与方法)
app.get( '请求URL', function(req,res) {/*处理函数*/})
4)监听post请求
通过app.post()方法,可以监听客户端的GET请求,具体的语法格式如下:
// 参数1:客户端请求的URL地址
// 参数2:请求对应的处理函数
// req:请求对象(包含了与请求相关的属性与方法)
// res:响应对象(包含了与响应相关的属性与方法)
app.post( '请求URL', function(req,res) {/*处理函数*/})
5)把内容响应给客户端
通过res.send(方法,可以把处理好的内容,发送给客户端:
app.get('/user', (req, res) =>{
// 向客户端发送JSON对象
res.send({ name:'zs', age: 20, gender: '男'})
})
app.post( '/user', (req,res) =>{
// 向客户端发送文本内容
res.send('请求成功')
})
示例如下:
// 1.导入express
const express = require('express')
// 2.创建web服务器
const app = express()
// 监听客户端的 GET 和 POST 请求,并向客户端响应具体的内容
app.get('/user', (req, res) =>{
// 调用express提供的res.sent()方法,向客户端发送JSON对象
res.send({ name:'zs', age: 20, gender: '男'})
})
app.post( '/user', (req,res) =>{
// 调用express提供的res.sent()方法,向客户端发送文本内容
res.send('请求成功')
})
// 3.调用app.listen(端口号,启动成功后的回调函数),启动服务果
app.listen(80, () => {
console.log( 'express server running at http://127.0.0.1')
})