`
javababy1
  • 浏览: 1230038 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

HTTP的一些参考资料和Header信息

阅读更多

一、HTTP响应码
响应码由三位十进制数字组成,它们出现在由HTTP服务器发送的响应的第一行。

响应码分五种类型,由它们的第一位数字表示:
1xx:信息,请求收到,继续处理
2xx:成功,行为被成功地接受、理解和采纳
3xx:重定向,为了完成请求,必须进一步执行的动作
4xx:客户端错误,请求包含语法错误或者请求无法实现
5xx:服务器错误,服务器不能实现一种明显无效的请求

下表显示每个响应码及其含义:

100 继续
101 分组交换协
200 OK
201 被创建
202 被采纳
203 非授权信息
204 无内容
205 重置内容
206 部分内容
300 多选项
301 永久地传送
302 找到
303 参见其他
304 未改动
305 使用代理
307 暂时重定向
400 错误请求
401 未授权
402 要求付费
403 禁止
404 未找到
405 不允许的方法
406 不被采纳
407 要求代理授权
408 请求超时
409 冲突
410 过期的
411 要求的长度
412 前提不成立
413 请求实例太大
414 请求URI太大
415 不支持的媒体类型
416 无法满足的请求范围
417 失败的预期
500 内部服务器错误
501 未被使用
502 网关错误
503 不可用的服务
504 网关超时
505 HTTP版本未被支持

二、HTTP头标
头标由主键/值对组成。它们描述客户端或者服务器的属性、被传输的资源以及应该实现连接。

四种不同类型的头标:

1.通用头标:即可用于请求,也可用于响应,是作为一个整体而不是特定资源与事务相关联。
2.请求头标:允许客户端传递关于自身的信息和希望的响应形式。
3.响应头标:服务器和于传递自身信息的响应。
4.实体头标:定义被传送资源的信息。即可用于请求,也可用于响应。

头标格式::

下表描述在HTTP/1.1中用到的头标
Accept 定义客户端可以处理的媒体类型,按优先级排序;
在一个以逗号为分隔的列表中,可以定义多种类型和使用通配符。例如:Accept: image/jpeg,image/png,*/*
Accept-Charset 定义客户端可以处理的字符集,按优先级排序;
在一个以逗号为分隔的列表中,可以定义多种类型和使用通配符。例如:Accept-Charset: iso-8859-1,*,utf-8
Accept-Encoding 定义客户端可以理解的编码机制。例如:Accept-Encoding:gzip,compress
Accept-Language 定义客户端乐于接受的自然语言列表。例如:Accept-Language: en,de
Accept-Ranges 一个响应头标,它允许服务器指明:将在给定的偏移和长度处,为资源组成部分的接受请求。
该头标的值被理解为请求范围的度量单位。例如Accept-Ranges: bytes或Accept-Ranges: none
Age 允许服务器规定自服务器生成该响应以来所经过的时间长度,以秒为单位。
该头标主要用于缓存响应。例如:Age: 30
Allow 一个响应头标,它定义一个由位于请求URI中的次源所支持的HTTP方法列表。例如:Allow: GET,PUT
aUTHORIZATION 一个响应头标,用于定义访问一种资源所必需的授权(域和被编码的用户ID与口令)。
例如:Authorization: Basic YXV0aG9yOnBoaWw=
Cache-Control 一个用于定义缓存指令的通用头标。例如:Cache-Control: max-age=30
Connection 一个用于表明是否保存socket连接为开放的通用头标。例如:Connection: close或Connection: keep-alive
Content-Base 一种定义基本URI的实体头标,为了在实体范围内解析相对URLs。
如果没有定义Content-Base头标解析相对URLs,使用Content-Location URI(存在且绝对)或使用URI请求。
例如:Content-Base: Http://www.myweb.com
Content-Encoding 一种介质类型修饰符,标明一个实体是如何编码的。例如:Content-Encoding: zip
Content-Language 用于指定在输入流中数据的自然语言类型。例如:Content-Language: en
Content-Length 指定包含于请求或响应中数据的字节长度。例如:Content-Length:382
Content-Location 指定包含于请求或响应中的资源定位(URI)。
如果是一绝。对URL它也作为被解析实体的相对URL的出发点。
例如:Content-Location: http://www.myweb.com/news
Content-MD5 实体的一种MD5摘要,用作校验和。
发送方和接受方都计算MD5摘要,接受方将其计算的值与此头标中传递的值进行比较。
例如:Content-MD5:
Content-Range 随部分实体一同发送;标明被插入字节的低位与高位字节偏移,也标明此实体的总长度。
例如:Content-Range: 1001-2000/5000
Contern-Type 标明发送或者接收的实体的MIME类型。例如:Content-Type: text/html
Date 发送HTTP消息的日期。例如:Date: Mon,10PR 18:42:51 GMT
ETag 一种实体头标,它向被发送的资源分派一个唯一的标识符。
对于可以使用多种URL请求的资源,ETag可以用于确定实际被发送的资源是否为同一资源。
例如:ETag: ‘208f-419e-30f8dc99′
Expires 指定实体的有效期。例如:Expires: Mon,05 Dec 2008 12:00:00 GMT
Form 一种请求头标,给定控制用户代理的人工用户的电子邮件地址。例如:From: webmaster@myweb.com
Host 被请求资源的主机名。对于使用HTTP/1.1的请求而言,此域是强制性的。例如:Host: www.myweb.com
If-Modified-Since 如果包含了GET请求,导致该请求条件性地依赖于资源上次修改日期。
如果出现了此头标,并且自指定日期以来,此资源已被修改,应该反回一个304响应代码。
例如:If-Modified-Since: Mon,10PR 18:42:51 GMT
If-Match 如果包含于一个请求,指定一个或者多个实体标记。只发送其ETag与列表中标记区配的资源。
例如:If-Match: ‘208f-419e-308dc99′
If-None-Match 如果包含一个请求,指定一个或者多个实体标记。资源的ETag不与列表中的任何一个条件匹配,操作才执行。
例如:If-None-Match: ‘208f-419e-308dc99′
If-Range 指定资源的一个实体标记,客户端已经拥有此资源的一个拷贝。必须与Range头标一同使用。
如果此实体自上次被客户端检索以来,还不曾修改过,那么服务器只发送指定的范围,否则它将发送整个资源。
例如:Range: byte=0-499If-Range:’208f-419e-30f8dc99′
If-Unmodified-Since 只有自指定的日期以来,被请求的实体还不曾被修改过,才会返回此实体。
例如:If-Unmodified-Since:Mon,10PR 18:42:51 GMT
Last-Modified 指定被请求资源上次被修改的日期和时间。例如:Last-Modified: Mon,10PR 18:42:51 GMT
Location 对于一个已经移动的资源,用于重定向请求者至另一个位置。
与状态编码302(暂时移动)或者301(永久性移动)配合使用。
例如:Location: http://www2.myweb.com/index.jsp
Max-Forwards 一个用于TRACE方法的请求头标,以指定代理或网关的最大数目,该请求通过网关才得以路由。
在通过请求传递之前,代理或网关应该减少此数目。例如:Max-Forwards: 3
Pragma 一个通用头标,它发送实现相关的信息。例如:Pragma: no-cache
Proxy-Authenticate 类似于WWW-Authenticate,便是有意请求只来自请求链(代理)的下一个服务器的认证。
例如:Proxy-Authenticate: Basic realm-admin
Proxy-Proxy-Authorization 类似于授权,但并非有意传递任何比在即时服务器链中更进一步的内容。
例如:Proxy-Proxy-Authorization: Basic YXV0aG9yOnBoaWw=
Public 列表显示服务器所支持的方法集。例如:Public: OPTIONS,MGET,MHEAD,GET,HEAD
Range 指定一种度量单位和一个部分被请求资源的偏移范围。例如:Range: bytes=206-5513
Refener 一种请求头标域,标明产生请求的初始资源。对于HTML表单,它包含此表单的Web页面的地址。
例如:Refener: http://www.myweb.com/news/search.html
Retry-After 一种响应头标域,由服务器与状态编码503(无法提供服务)配合发送,以标明再次请求之前应该等待多长时间。
此时间即可以是一种日期,也可以是一种秒单位。例如:Retry-After: 18
Server 一种标明Web服务器软件及其版本号的头标。例如:Server: Apache/2.0.46(Win32)
Transfer-Encoding 一种通用头标,标明对应被接受方反向的消息体实施变换的类型。例如:Transfer-Encoding: chunked
Upgrade 允许服务器指定一种新的协议或者新的协议版本,与响应编码101(切换协议)配合使用。
例如:Upgrade: HTTP/2.0
User-Agent 定义用于产生请求的软件类型(典型的如Web浏览器)。
例如:User-Agent: Mozilla/4.0(compatible; MSIE 5.5; Windows NT; DigExt)
Vary 一个响应头标,用于表示使用服务器驱动的协商从可用的响应表示中选择响应实体。例如:Vary: *
Via 一个包含所有中间主机和协议的通用头标,用于满足请求。例如:Via: 1.0 fred.com, 1.1 wilma.com
Warning 用于提供关于响应状态补充信息的响应头标。例如:Warning: 99 www.myweb.com Piano needs tuning
www-Authenticate 一个提示用户代理提供用户名和口令的响应头标,与状态编码401(未授权)配合使用。响应一个授权头标。
例如:www-Authenticate: Basic realm=zxm.mgmt

分享到:
评论

相关推荐

    风吟PHP HTTP Header 信息检测.rar

    标题“风吟PHP HTTP Header 信息检测.rar”指的是一个使用PHP编写的工具,该工具能够检测HTTP头部信息,特别是与HTTP响应头相关的压缩状态,如gzip压缩,以及服务器的相关信息。这个工具对于开发者来说非常有用,...

    GSOAP_添加Header的处理

    ### GSOAP添加Header的处理详解 #### 一、引言 在进行Web服务开发时,经常需要使用到GSOAP库来进行SOAP消息的处理。...希望本文的内容能为正在使用GSOAP进行Web服务开发的朋友提供一些有用的参考和启示。

    Pdt_Header.txt

    BootLoader针对不同的硬件平台会有所不同,对于DA1458X,它的BootLoader头部Header配置文件是理解其启动过程和系统配置的重要参考。 **BootLoader头部Header的主要组成部分包括:** 1. **版本信息**:记录...

    go语言在请求http时加入自定义http header的方法

    本文实例讲述了go语言在请求http时加入自定义http header的方法。分享给大家供大家参考。具体实现方法如下: 代码如下: client := &http.Client{] req, err := http.NewRequest(“POST”, “http://example.com”, ...

    HTML参考资料集合

    这个“HTML参考资料集合”显然是为初学者准备的一个资源库,包含各种学习材料,帮助理解并掌握HTML的基础和进阶知识。 首先,电子书是学习HTML的重要资料,通常会涵盖HTML的基本结构、元素、属性以及如何组织页面...

    C# Header Control - C# Source code

    1. **Header.sln**:这是一个Visual Studio解决方案文件,用于组织和管理项目及其依赖关系。用户可以通过打开这个文件在Visual Studio中加载整个项目,并进行编译、调试和测试。 2. **Header.suo**:这是Visual ...

    实现列表header和footer隐藏后滑动快速出现功能源码.rar

    在设计用户界面时,我们有时需要在列表的顶部添加Header,底部添加Footer,以显示额外的信息或者操作区域。然而,在滚动列表时,为了优化用户体验,这些Header和Footer可能会被暂时隐藏。当用户向上滑动时,Header应...

    Anroid ListView分组和悬浮Header以及下拉刷新功能实现

    它集成了分组Header的固定和下拉刷新功能,你可以直接在项目中使用,或者参考其源码学习实现原理。 总之,Android ListView的分组、悬浮Header和下拉刷新功能是提高用户体验的关键特性。通过理解并实践这些技术,...

    H.264 Slice header syntax 成员值含义学习

    以下是对标题和描述中提到的一些关键成员值的详细解释: 1. **pic_parameter_set_id**: 这个值指定了当前条带所使用的图像参数集(Picture Parameter Set, PPS),其中包含了编码参数如量化参数、参考帧列表等信息...

    经典:WEB开发必备参考资料

    在IT行业中,Web开发是一项至关重要的技能,涵盖了前端与后端技术,以及众多相关的工具和框架。本资源“经典:WEB开发...这个资源包中的文档应包含上述各个领域的详细教程和参考指南,是Web开发者不容错过的宝贵资料。

    自定义HeaderBar

    此外,Android的Material Design提供了丰富的设计规范和组件,自定义HeaderBar时可以参考这些指南,确保设计的一致性和专业性。例如,使用Material Design的色彩系统来定义背景色,或者使用Shape Drawable来创建...

    RecyclerView_Header_Footer

    在默认情况下,RecyclerView只会显示Adapter中的数据项,但有时我们需要在列表的开头或末尾添加额外的视图,如广告、提示信息或者加载更多按钮,这就需要用到Header和Footer。 添加Header和Footer的方法主要有两种...

    ios-自定义瀑布流(可添加自定义header和footer).zip

    "ios-自定义瀑布流(可添加自定义header和footer).zip"提供了一套完整的iOS瀑布流解决方案,包括自定义布局、头部和尾部视图的实现,对于想要在iOS应用中实现类似功能的开发者来说,这是一个非常有价值的参考资料。...

    谷歌浏览器可安装的Header Editor 插件

    为谷歌浏览器安装Header Editor 插件,实现Kaggle注册(可显示出人机验证按钮),安装及配置过程参考https://blog.azurezeng.com/recaptcha-use-in-china/

    header-decor列表.zip

    这些装饰元素通常包含一些静态信息,如天气、时间或者搜索栏,它们会随着用户滚动列表而上下移动。"header-decor列表.zip"文件内容可能是一个开源项目,专门研究并实现这一功能。 这个项目的名称是"header-decor-...

    web前段开发技术二考试参考资料

    综上所述,Web前端开发技术二考试的参考资料应覆盖以上各个方面,确保学习者能全面理解和掌握这一领域的核心知识点,从而在考试中取得佳绩。通过深入学习和实践,你将能够构建出高效、美观且易用的Web应用程序。

    PIC header files

    标题中的"PIC header files"指的是微控制器领域中与PIC微控制器相关的头文件集合。...在实际开发过程中,结合Microchip的官方文档和其他参考资料,开发者可以更深入地了解如何利用这些头文件来优化项目。

    表头浮动(table header fixed)

    在网页设计中,"表头浮动(Table Header Fixed)"是一种常见的布局技术,主要用于处理长表格数据。当用户滚动页面时,表头始终保持可见,以便用户可以随时参考列标题,理解表格中的数据。这种效果提高了用户体验,...

    Redis源码阅读参考资料1

    Redis源码阅读参考资料 Redis是缓存数据库管理系统的核心组件之一,作为一个开源的in-memory数据存储系统,Redis提供了高性能的数据存储和检索功能。为了更好地理解Redis的工作原理和实现机制,本文将从Redis的源码...

    前端开源库-connect-header

    开发者可以通过阅读源码了解其工作原理,或者参考文档和示例快速上手。 总之,"connect-header"是一个实用的前端开源库,它增强了对HTTP连接头的控制,使开发者能够更好地管理Web应用的交互和安全性。通过灵活运用...

Global site tag (gtag.js) - Google Analytics