HTTP请求首部字段详解(三)

请求首部字段是从客户端向服务器端发送请求报文中所需要使用的字段。它用来补充请求的附加信息、客户端信息、对相应内容相关的优先级等。

    本文详细讲解以下请求首部字段:Max-Forwards、Proxy-Authorization、Range、Referer、TE和User-Agent 。

        1>Max-Forwards

        通过TRACE或者OPTIONS方法发送请求时,通过在该字段指定十进制数字来指定最多可经过的服务器数目。服务器在往下一个服务器发送请求的过程中,会将该字段的值减一后重新赋值。当服务器接收到该字段的值为0的请求时,则不再转发而是直接返回响应。

        使用HTTP协议通信时,请求可能会经过代理等多台服务器。途中如果某台服务器出现故障,则客户端将不会收到返回的信息。可以通过灵活使用该字段对上述问题展开调查,我们至少可以对经由那台服务器的通信路径的状况有所把握。

        2> Proxy-Authorization

Proxy-Authorization

        当客户端接收到代理服务器发来的认证质询时,会发送包含该首部字段的请求,以告知服务器认证所需要的信息。

        这个行为与客户端和服务器之间的HTTP访问认证相类似的,不同之处在于,该认证行为只会出现在客户端和代理之间。

        3>Range

        对于只需要获取部分资源的范围请求,包含首部字段Range即可告知服务器资源的指定范围。

Range

        上面的示例表示请求获取从5001字节到第10000字节的资源。

        接收到附带Range首部字段请求的服务器,会在处理请求之后返回状态码206 Partial Content的响应。无法处理该范围请求时,则会返回状态码200OK的响应及全部资源。

        4>Referer

        该首部字段会告知服务器请求的原始资源的URI。

        客户端一般都会发送Referer首部字段给服务器。但是当在浏览器的地址栏输入URI,或者出于安全考虑时,也可以不发送该首部字段。

        因为原始的URI中的查询字符串可能包含有ID、密码等保密信息,如果写进Referer转发给其他服务器,可能导致保密信息的泄漏。

        另外,该首部字段的正确英文拼音是Referrer,但是因为制定协议时的错误,人们也就将错就错沿用了该字段的名称。

        5>TE

    该首部字段会告知服务器客户端可以处理响应的传输编码方式以及对应的优先级。它和首部字段Accept-Encoding的功能很像,但是用于传输编码。

TE

        6>User-Agent

        该字段用于传达浏览器的种类。

User-Agent

        该字段会创建请求的浏览器和用户代理名称等信息传输给服务器。

        由网络爬虫发起请求时,有可能会在字段内添加爬虫作者的电子邮件地址。此外,如果请求经过代理,那么中间可能会被添加上代理服务器的名称。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值