HTTP 协议
Posted dajiaoniu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP 协议相关的知识,希望对你有一定的参考价值。
HTTP 协议 // 请求头与响应头
HTTP 是一种超文本传输协议,规定了html文件在网络传输的格式(浏览器,服务器在交互过程的数据格式).
HTTPS 是一种超文本传输安全协议,是以安全为目标的HTTP 通道,即是http 的安全版。
HTTPS 的安全基础是SSL,即在HTTP 下加入SSL 层,因此加密的详细内容就需要SSL。
请求与响应
http 协议包含了两部分:请求与响应 。一次请求一次响应(一次完整的协议),先有请求后有响应。
请求:由三部分组成。即:请求行,请求头,请求体
请求行:就是请求内容的第一行。 表明了请求方式,请求资源路径,以及版本号
格式:请求方式 资源路径 协议 / 版本号
示例:GET lianxi/001.html HTTP/1.1
版本号:1.0 每次你用浏览器发一次请求 浏览器底层创建tcp连接 请求结束了 连接抛弃了
1.1 1.1 每次你用浏览器发一次请求 浏览器底层创建tcp连接 请求结束了 连接保留一段时间
请求头:以key / value 形式存在的。表示请求的相关信息
常见请求头:
Accept: text/html,image/* --支持数据类型
Accept-Charset: ISO-8859-1 --字符集
Accept-Encoding: gzip --支持压缩
Accept-Language: zh-cn --语言环境
Host: www.it.cn: 80 --访问主机
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT --缓存文件的最后修改时间
Referer: http://www.baidu.com/index.jsp --来自哪个页面(即从哪个网站来访问页面的)、防盗链
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/64.0.3282.186 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0 --浏览器及版本
Cookie
Connection: close/Keep-Alive --链接状态
请求体:GET 请求没有请求体,只有post 请求有请求体
post 请求中的请求体中,存放的是请求参数。
响应:由三部分组成。即:响应行 响应头 响应体
响应行:响应的第一行。表明了协议及版本,响应的状态码,状态码说明
格式:协议 / 版本 状态码 状态码说明
示例: HTTP/1.1 200 OK
状态码: 用来表明该次响应的概述
1xx :表明服务器已经接受请求,数据正在准备,稍等
2xx :表明成功 常见的有 200
3xx :表明浏览器需要进一步操作才能获取到想要的资源
304 :缓存
302 :重定向 会有一个location的响应头:你想要告诉浏览器新的地址
4xx :表示响应错误
404 :找不到路径
405 :请求方式不对
5xx :表示服务器端异常
500 :服务器端错误
响应头:以key / value 形式存在的。表示响应的相关信息
常见的响应头:
Location: http://www.it315.org/index.jsp --跳转方向
Server: apache tomcat --服务器型号
Content-Encoding: gzip --数据压缩
Content-Length: 80 --数据长度
Content-Language: zh-cn --语言环境
Content-Type: text/html;charset=GB2312 --数据类型 大数据类型/数据类型 text/html text/java images/png images/gif
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT --最后修改时间
Refresh: 1;url=http://www.it315.org --定时刷新
Content-Disposition: attachment; filename=aaa.zip --下载
Set-Cookie: SS=Q0=5Lb_nQ; path=/search
Expires: -1 --缓存
Cache-Control: no-cache --缓存
Pragma: no-cache --缓存
Connection: close/Keep-Alive --连接
Content-Type: 表示返回的数据类型 Location:重定向
响应体:就是存放响应的正文内容
以上是关于HTTP 协议的主要内容,如果未能解决你的问题,请参考以下文章