HTTP报头

HTTP协议是什么?

 HTTP协议(HyperText Transfer Protocol,超文本传输协议)

   是用于从WWW服务器传输超文本到本地浏览器的传送协议。

   它可以使浏览器更加高效,使网络传输减少。

   它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部     分内容首先显示(如文本先于图形)等。
 HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HTTP是      一个无状态的协议。


HTTP是如何工作的?

1. 建立连接
客户机与服务器需要建立连接。单机某个超链接,HTTP协议工作开始

2. 发送请求
建立连接后,客户机发送一个请求给服务器。格式为:前面是统一资源标识符URL,中间是协议版本号,后面是MIME信息(包括请求修饰符、客户机信息和可能的内容)

3. 响应
服务器接到请求后,给予相应的响应信息。格式为:首先是一个状态行(包括信息的协议版本号、一个成功或错误的代码),然后是MIME信息(包括服务器信息、实体信息和可能的内容)

4. 断开连接
 


 HTTP报头格式

 

①是请求方法,GET和POST是最常见的HTTP方法,除此以外还包括DELETE、HEAD、OPTIONS、PUT、TRACE。 

        它的主要作用是从web服务器获取一个资源。

②为请求对应的URL地址,它和报文头的Host属性组成完整的请求URL。

③是协议名称及版本号

④是HTTP的报文头,报文头包含若干个属性,格式为“属性名:属性值”,服务端据此获取客户端的信息。

       与缓存相关的规则信息,均包含在header中

        accept:Accept浏览器支持的MIME类型分别是text/html  applicant/xhtml+xml          application/xml和*/*

        MIME: 多功能Internet邮件扩充服务

        text:用于标准化地表示的文本信息,文本消息可以是多种字符集和或者多种格式的;

        text/html表示html文档;

        Application:用于传输应用程序数据或者二进制数据

        applicantion/xhtml+xhtml表示xhtml文档

        application/xml表示xml文档

⑤是报文体,它将一个页面表单中的组件值通过param1=value1&param2=value2的键值对形式编码成一个格式化串,它承载多个请求参数的数据。不但报文体可以传递请求参数,请求URL也可以通过类似于“/chapter15/user.html? param1=value1&param2=value2”的方式传递请求参数。

referer:消息头用于表示发出请求的原始URL

accept-language:浏览器支持的语言,zh-cn表示简体中文,zh表示中文

user-agent:消息头提供与浏览器或其他生成请求的客户端软件有关的信息

Host:消息头用于指定出现在被访问的完整URL中的主机名称

Cookie:消息头用于提交服务器向客户端发布其他参数

Httponly:如果设置这个属性,将无法通过客户端JavaScript直接访问cookie

                 防止黑客利用cookie进行XXS攻击

Connection:表示持久的客户端与服务连接。connection:keep-alive

X_Forrwarded_For:是用来识别通过HTTP代理或负载均衡的方法连接到Web服务器的客户端最原始的IP地址的HTTP

Location:这个消息头用于在重定向响应(那些状态码以3开头的响应)中说明重定向的目标

猜你喜欢

转载自blog.csdn.net/weixin_46601374/article/details/121451752