参考链接: https://www.cnblogs.com/ranyonsue/p/5984001.html
一、http协议
解决从服务器和浏览器之间报文的传输,支持图片、文本等多种格式的一种协议。
二、http协议的特点
无状态:服务器不知道客户端是什么状态,服务器不会记录客户端的任何信息,服务器不认识客户端,解决方式:session会话控制
无连接:每发送一次请求,返回一次响应就关闭这次连接,解决方式:keep alive
持久连接:每发送一次请求,返回一次响应不关闭这次连接 例如视频
http1.0默认关闭keep alive
http:1.1默认开启keep alive
三、http协议基本组成:报文首部、空行、body(可选)
1、请求格式:
一个起始行--------内容包括:请求方式,URI,HTTP协议的版本
一个或者多个头域
一个指示头域结束的空行
Request URL: https://www.baidu.com/s?
Request Method: GET
Status Code: 200 OK
Request Headers: Cookie:jessionID=DSFDKSFKSF13324
2、响应格式:
HTTP协议的版本、状态代码、描述
响应头
响应正文
HTTP/1.1 200 OK
Server:nio/1.1
Content-type:text/html;charset=GBK
Content-length:102
<html>
<head><title>helloapp</title></head>
<body><h1>hello</h1></body>
</html>
四、http常用请求方式使用场景
1 GET 请求指定资源信息,并返回实体主体,常用在查询
2 HEAD 类似于 GET 请求,只不过返回的响应中没有具体的内容,用于获取报头
3 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。
POST 请求可能会导致新的资源的建立和/或已有资源的修改。
4 PUT 从客户端向服务器传送的数据取代指定的文档的内容。
5 DELETE 请求服务器删除指定的页面。
6 CONNECT HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。
7 OPTIONS 允许客户端查看服务器的性能:跨域资源访问预请求是否有权限。
8 TRACE 回显服务器收到的请求,主要用于测试或诊断。
9 PATCH 是对 PUT 方法的补充,用来对已知资源进行局部更新 。
五、http常用状态码
2开头表示请求成功 200成功
3开头表示请求被重定向
4开头请求错误 404找不到
5开头服务器错误 500服务器内部错误