38.Express基础学习(一)

学完node.js部分后,我们来学习怎么搭建一个前端服务器吧!!

第1章:Express简介

1.1 Express是什么

  Express 是一个基于 Node.js 平台的极简、灵活的 web 应用开发框架,它提供一系列强大的特性,帮助你快速创建各种 Web和移动设备应用。 简单来说Express就是运行在node中的用来搭建服务器的模块。

1.2 Express的使用

1.2.1 下载

npm i express --save  //  安装express并添加到依赖项

1.2.2 第一个服务器

//引入express模块
var express = require('express')
//创建应用对象
var app = express()
//配置静态资源
app.use(express.static('public'))
//开启服务器,监听3000端口
app.listen(3000)

第2章:路由(Route)

2.1 Route是什么

路由是指如何定义应用的端点(URIs)以及如何响应客户端的请求。 路由是由一个 URI、HTTP请求(GET、POST等)和若干个句柄组成的。

2.2 Route的定义

我们可以将路由定义为三个部分:
第一部分:HTTP请求的方法(get或post)
第二部分:URI路径
第三部分: 回调函数

2.3 Route的实现

Express中提供了一系列函数,可以让我们很方便的实现路由:

app.<method>(path,callback) 
语法解析:
method指的是HTTP请求方法,比如:
app.get()
app.post()
path指要通过回调函数来处理的URL地址
callback参数是应该处理该请求并把响应发回客户端的请求处理程序

2.4 Route的实例

//引入express
var express = require('express')
//创建应用对象
var app = express()
//配置路由
app.get('/index', function (request, response) {
  console.log('路由index收到get请求')
  response.send('这里是路由返回的信息,/hello收到了get请求')
})

app.post('/index', function (request, response) {
  console.log('路由index收到post请求')
  response.send('这里是路由返回的信息,/hello收到了post请求')
})

//启动服务器
app.listen(3000, function () {
  console.log('服务器启动成功,监听3000端口')
})

2.5 Route的运行流程

当Express服务器接收到一个HTTP请求时,它会查找已经为适当的HTTP方法和路径定义的路由
如果找到一个,Request和Response对象会被创建,并被传递给路由的回调函数
我们便可以通过Request对象读取请求,通过Response对象返回响应
Express中还提供了all()方法,可以处理两种请求。

2.6 Request对象

2.6.1 Request对象是什么

Request对象是路由回调函数中的第一个参数,代表了用户发送给服务器的请求信息
通过Request对象可以读取用户发送的请求包括URL地址中的查询字符串中的参数,和post请求的请求体中的参数。

2.6.2 Request对象属性和方法

属性/方法 描述
request.query 获取get请求查询字符串的参数,拿到的是一个对象
request.params 获取get请求参数路由的参数,拿到的是一个对象
request.body 获取post请求体,拿到的是一个对象(要借助一个中间件)
request.get(xxxx) 获取请求头中指定key对应的value

2.7 Response对象

2.7.1Response对象是什么

Response对象是路由回调函数中的第二个参数,代表了服务器发送给用户的响应信息。
通过Response对象可以设置响应报文中的各个内容,包括响应头和响应体。

2.7.2 Response对象的属性和方法

属性/方法 描述
response.send() 给浏览器做出一个响应
response.end() 给浏览器做出一个响应(不会自动追加响应头)
response.download() 告诉浏览器下载一个文件
response.sendFile() 给浏览器发送一个文件
response.redirect() 重定向到一个新的地址(url)
response.set(header,value) 自定义响应头内容
response.get() 获取响应头指定key对应的value
res.status(code) 设置响应状态码

下一篇:Express基础学习(二)

  • 18
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值