HTTP协议
2023-12-22 18:22:51
HTTP协议要求:浏览器在向服务器发送请求数据时,或是服务器在向浏览器发送响应数据时,都必须按照固定的格式进行数据传输。
HTTP的特点:
- 基于TCP协议:面向连接,安全;TCP 是一种面向连接的(建立连接之前是需要三次握手)、可靠的、基于字节流的传输层通信协议,在数据传输方面更加安全
- 基于请求-响应模型:一次请求对应一次响应(先请求后响应);请求和响应是一一对应的
- HTTP协议是无状态协议:对于数据没有记忆能力。每次请求-响应都是独立的;
无状态指的是客户端发送HTTP请求给服务端之后,服务端根据请求响应数据,响应完后,不会记录任何信息。
缺点:多次请求间不能共享数据
优点:速度快
请求之间无法共享数据会引发的问题:
如:京东购物,加入购物车和去购物车结算是两次请求
HTTP的无状态特性,加入购物车请求响应结束后,并未记录加入购物车是何商品
HTTP-请求协议
浏览器和服务器是按照HTTP协议进行数据通信的。
HTTP协议又分为:请求协议和响应协议
-
请求协议:浏览器将数据以请求格式发送到服务器
-
包括:请求行、请求头 、请求体
-
-
响应协议:服务器将数据以响应格式返回给浏览器
-
包括:响应行 、响应头 、响应体
-
常用的GET和POST
GET:获取资源,向特定的资源发出请求
POST:传输实体主体,向指定资源提交数据进行处理请求,数据被包含在请求体里。
GET请求和POST请求的区别:
区别方式 | GET请求 | POST请求 |
---|---|---|
请求参数 | 请求参数在请求行中。 例:/brand/findAll?name=OPPO&status=1 | 请求参数在请求体中 |
请求参数长度 | 请求参数长度有限制(浏览器不同限制也不同) | 请求参数长度没有限制 |
安全性 | 安全性低。原因:请求参数暴露在浏览器地址栏中。 | 安全性相对高 |
HTTP-响应协议
与请求一样,响应的数据也分为3部分:响应行、响应头、响应体
响应状态码
状态码分类 | 说明 |
---|---|
1xx | 响应中 --- 临时状态码。表示请求已经接受,告诉客户端应该继续请求或者如果已经完成则忽略 |
2xx | 成功 --- 表示请求已经被成功接收,处理已完成 |
3xx | 重定向 --- 重定向到其它地方,让客户端再发起一个请求以完成整个处理 |
4xx | 客户端错误 --- 处理发生错误,责任在客户端,如:客户端的请求一个不存在的资源,客户端未被授权,禁止访问等 |
5xx | 服务器端错误 --- 处理发生错误,责任在服务端,如:服务端抛出异常,路由出错,HTTP版本不支持等 |
关于响应状态码,我们先主要认识三个状态码,其余的等后期用到了再去掌握:
-
200 ok 客户端请求成功
-
404 Not Found 请求资源不存在
-
500 Internal Server Error 服务端发生不可预期的错误
文章来源:https://blog.csdn.net/weixin_48592695/article/details/135155555
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!