HTTP是超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础
![3bbc481e8d582e2b5213e1abbb9574c8.png](https://i-blog.csdnimg.cn/blog_migrate/30dcac81c0708fa31fd0b01d29285697.jpeg)
http协议
一、请求消息
- 包含三大部分
1.1请求行:位于请求消息的第一行
格式:请求方式 资源路径 HTTP版本号
常用请求方式:GET和POST方式
1.1.1Get请求方式:
a、若请求服务器上的某个资源,没有指定请求方式,则默认为GET方式
b、可以通过GET方式向服务器传递数据。具体方式就是在URL请求路径后加上?,多个参数以&分割。比如http://localhost:8080/a.html?username=abc&password=123
注:GET请求方式,数据不安全且有URL长度限制(1K)
1.1.2Post请求方式:
a、若使用Post请求方式传递数据,可以借助form表单的method="post"
b、数据安全,且长度没有限制
1.2若干消息头:从第二行开始到第一个空行。作用:向服务器传递客户端的一些基本信息
a、Accept:浏览器可接受的MIME类型(Tomcat安装目录/conf/web.xml中查找)
b、Accept-Charset:告知服务器,客户端支持哪种字符集
c、Accept-Encoding:浏览器能够进行解码的数据编码方式
d、Accept-Language:浏览器支持的语言。
e、Referer:当前页面由哪个页面访问过来的。
f、Content-Type:内容类型
g、Content-Length:请求正文的长度
1.3请求正文:从第一个空行开始,后面的都是正文。(可以没有)
二、响应消息
1、包含三大部分
1.1状态行:位于响应消息的第一行
格式: HTTP版本号 状态码 原因叙述
1.2若干消息头:从第二行开始到第一个空行
a、Location:制定转发的地址。需与302/307响应码一同使用
b、Server:告知客户端服务器使用的容器类型
c、Content-Encoding:告知客户端服务器发送的数据所采用的压缩格式
d、Content-Length:告知客户端正文的长度
e、Content-Type:告知客户端正文的MIME类型
Conent-Type:text/html;charset=UTF-8
f、Refresh:定期刷新。还可以刷新到其他资源
Refresh:3;URL=otherurl3妙后刷新到otherurl这个页面
g、Content-Disposition:指示客户端以下载的方式保存文件。
Content-Disposition:attachment;filename=2.jpg
h、Expires:-1
Cache-Control:no-cache
Pragma:no-cache
控制客户端不要缓存
1.3响应正文:从第一个空行开始,后面的都是正文。