1. HTTP协议的概念
超文本传输协议(英文:HyperText Transfer Protocol,缩写 HTTP)规定了如何从网站传输超文本到本地浏览器,它基于客户端服务器架构工作,是客户端(用户)和服务器端(网站)请求和应答的标准。
2. 报文
在HTTP 请求和响应的过程中传递的数据块就叫报文,包括要传送的数据和一些附加信息,并且要遵守规定好的格式。
3. 请求报文
- 请求方式(Request Method)
- GET 请求数据
- POST 发送数据
- 请求地址
- 请求方式就是一种标识,用来告诉服务器端当前这次请求要做的这次事情的类型。
- 比如说:获取数据的请求,一般都用get
- 添加数据的请求,就用post
- 如果这个请求既不是获取数据,也不是添加数据,就是网站当中的一般逻辑,比如说:登录操作,也用post
- 因为post操作相对于get操作要更安全一些
获取请求方式:
req.method
ps: req.method 返回的GET 或 POST 都是大写的
- 在浏览器中输入网址,请求方式是GET
- 那一般什么事情是post请求呢? 最典型的:表单提交
表单提交
form 表单通常有两个属性是最常用的:
- method : 指定当前表单提交的方式,如果不写,默认是GET 请求
- action: 指定表单当前提交的地址
<form action="http://localhost:3000" method="post">
<input type="submit">
</form>
打开页面,点击提交后,终端如下显示:
- 为什么有post请求之后还有一个get请求呢?
当我们点击表单的提交按钮的时候,确实发送了一个post请求,发送完成以后,紧接着表单发生了一个默认行为,而默认行为就是表单的跳转行为。表单的跳转行为默认是get方式。
4. 响应报文
- HTTP状态码
- 200 请求成功
- 404 请求的资源没有被找到
- 500 服务器端错误
- 400 客户端请求有语法错误
- 内容类型
- text/html
- text/css
- application/javascript
- image/jpeg
- application/json
ps: http状态码就是一种标识,而你在返回的时候要把状态码设置成多少,完全取决于你当时的情况。根据情况的不同去响应不同的内容。