HTTP首部(请求头,响应头)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP首部(请求头,响应头)相关的知识,希望对你有一定的参考价值。
参考技术A 一次HTTP请求或响应的首部包括三个部分,报文首部,空行,以及报文主体。其中报文首部在请求和响应中有所不同,参见下图(图片来自《图解HTTP》一书):区别:请求行相比状态行,要多一个URI标识,因为要说明请求的资源;另外还有各自的请求首部字段或响应首部字段。
Cookie: 属于请求首部,携带符合条件的Cookie(domain,path,expires)发送至服务器。
Set-Cookie: 属于响应首部,告诉客户端需要保存哪些Cookie值,包括要种Cookie的domain,path,expires。
除了文中所列举的首部字段之外,还有很多其他的首部字段,感兴趣的朋友可以通过其他文章或资料来学习。
HTTP协议
一、主要特点:简单快捷,灵活,无连接,无状态
二、报文组成部分
请求报文:请求行,请求头,空行,请求体
响应报文:响应行,响应头,空行,响应体
三、HTTP方法
GET获取资源
POST传输资源
PUT更新资源
DELETE删除资源
HEAD获得报文首部
四、GET和POST区别
GET在浏览器回退时是无害的,POST会再次请求
GET产生的URL地址可以被收藏,POST不可以
GET请求会被浏览器主动缓存,POST不会缓存除非手动设置
GET只能进行url编码,POST支持多种编码方式
GET请求参数完整保留在浏览器历史记录,POST参数不会被保留
GET请求在URL中传送参数是有长度限制的,POST没有限制
对参数的数据类型,GET只接受ASCII字符,POST没有限制
GET参数暴露在URL上,不能用来传递敏感信息
GET参数通过URL传递,POST放在Request body中
五、HTTP状态码
1XX指示信息
2XX成功 200
3XX重定向
4XX客户端错误
5XX服务器错误
六、持久连接、管线化
持久连接不会再次请求,HTTP1.1版本支持
管线化基于无连接,将多次请求打包只请求一次,响应同样,而不是多次请求响应;
只有GET和HEAD请求可以进行管线化,POST有所限制
初次创建连接不应启动管线机制,因为服务器不一定支持HTTP1.1版本的协议
以上是关于HTTP首部(请求头,响应头)的主要内容,如果未能解决你的问题,请参考以下文章