美文网首页
HTTP请求与响应

HTTP请求与响应

作者: 卿酌南烛_b805 | 来源:发表于2020-07-14 19:56 被阅读0次

    HTTP请求

     Accept表示浏览器支持的MIME 类型;

    MIME的英文全称是 Multipurpose Internet Mail

    Extensions(多功能 Internet 邮件扩充服务),它是一种多用途网际邮件扩充协议,在1992年最早应用于电子邮件系统,但后来也应用到浏览器。

    text/html,application/xhtml+xml,application/xml 都是 MIME 类型,也可以称为媒体类型和内容类型,斜杠前面的是 type(类型),斜杠后面的是 subtype(子类型);type 指定大的范围,subtype 是 type 中范围更明确的类型,即大类中的小类。

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

    text/html表示 html 文档;

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

    application/xhtml+xml表示 xhtml 文档;

    application/xml表示 xml 文档。

    Referer 消息头用于表示发出请求的原始URL(例如,因为用户单击页面上的一个链接)。请注意,在最初的HTTP规范中,这个消息头存在拼写错误,并且这个错误一直保留了下来。

    Accept-Language 浏览器支持的语言分别是中文和简体中文,优先支持简体中文。

    详解:

    Accept-Language表示浏览器所支持的语言类型;

    zh-cn表示简体中文;zh 表示中文;

    q是权重系数,范围 0 =< q <= 1,q 值越大,请求越倾向于获得其“;”之前的类型表示的内容,若没有指定 q 值,则默认为1,若被赋值为0,则用于提醒服务器哪些是浏览器不接受的内容类型。

    User-Agent消息头提供与浏览器或其他生成请求的客户端软件有关的信息。请注意,由于历史原因,大多数浏览器中都包含Mozilla前缀。这是因为最初占支配地位的Netscape浏览器使用了User-Agent字符串,而其他浏览器也希望让Web站点相信它们与这种标准兼容。与计算领域历史上的许多怪异现象一样,这种现象变得很普遍,即使当前版本的Internet Explorer也保留了这一做法,示例的请求即由Internet

    Explorer提出。

    Host消息头用于指定出现在被访问的完整URL中的主机名称。如果几个Web站点以相同的一台服务器为主机.就需要使用Host消息头.因为请求第一行中的URL内通常并不包含主机名称。

    Accept-Encoding浏览器支持的压缩编码是 gzip 和 deflate

    Cookie消息头用于提交服务器向客户端发布的其他参数(请参阅本章后续内容了解更多详情)。

    Connection表示持久的客户端与服务连接。

    Upgrade-Insecure-Requests: 1该指令用于让浏览器自动升级请求从http到https,用于大量包含http资源的http网页直接升级到https而不会报错.简洁的来讲,就相当于在http和https之间起的一个过渡作用.

    X_FORWARDED_FOR是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址的HTTP请求头字段。



    HTTP响应:

    以下是一个典型的HTTP响应:

    HTTP/1.1 200 OK

    Date: Tue, 19 Apr 2011 09:23:32 GMT

    Server: Microsoft-IIS/6.0

    X-Powered-By: ASP.NET

    Set-Cookie: tracking=tI8rk7joMx44S2Uu85nSWc

    X-AspNet-Version: 2.0.50727

    Cache-Control: no-cache

    Pragma: no-cache

    Expires: Thu, 01 Jan 1970 00:00:00 GMT

    Content-Type: text/html; charset=utf-8

    Content-Length: 1067

    <IDOCTYPE html PUBLIC一//W3C//DTD XHTML 1.0 Transitional//EN二http://

    www.w3.org/TR/xhtmll/DTD/xhtmll一transitional.dtd"><html xmlns="http://

    www.w3.ora/1999/xhtml* ><head><title>Your details</title>

    每个HTTP响应的第一行由3个以空格间隔的项目组成。

    使用的HTTP版本。

    表示请求结果的数字状态码。200是最常用的状态码.它表示成功提交了请求,正在返回所请求的资源。

    一段文本形式的“原因短语”,进一步说明响应状态。这个短语中可包含任何值,当前浏览器不将其用于任何目的。

    响应示例中的其他一些要点如下:

    Server消息头中包含一个旗标,指明所使用的Web服务器软件。有时还包括其他信息.如所安装的模块和服务器操作系统。其中包含的信息可能并不准确。

    Set-Cookie消息头向浏览器发送另一个cookie.它将在随后向服务器发送的请求中由Cookie消息头返回。

    Pragma消息头指示浏览器不要将响应保存在缓存中。Expires消息头指出响应内容已经过期.因此不应保存在缓存中。当返回动态内容时常常会发送这些指令,以确保浏览器随时获得最新内容。

    几乎所有的HTTP响应在消息头后的空白行下面都包含消息主体,Content-Type消息头示这个消息主体中包含一个HTML文档。

    Content-Length消息头规定消息主体的字节长度。

    ETag: W/"59a3dc83-f61" 浏览器根据HTTP请求的ETag验证请求的资源是否发生了改变,如果它未发生变化,服务器将返回“304 Not Modified”响应,并且资源从浏览器缓存中读取,这样就不必再次下载请求。

    Vary:Accept-Encoding”标头,表示网站一般启用了GZip压缩

    Expires是RFC 2616(HTTP/1.0)协议中和网页缓存相关字段。用来控制缓存的失效日期。


    相关文章

      网友评论

          本文标题:HTTP请求与响应

          本文链接:https://www.haomeiwen.com/subject/ubofhktx.html