HTTP响应头信息

来源:互联网 发布:金华亿途网络 编辑:程序博客网 时间:2024/05/16 09:03
以下是HTTP/1.1中用到的头标:
头标
描述
Content-Range
随部分实体一同发送;标明被插入点的低位与高位字节的偏移,也标明此实体的总长度。例如:
Content-Range:1001-2000/5000
Content-Type
表明发送或接受的实体的MIME类型。如:
Content-Type:text/html
Date
发送HTTP信息的日期,如:
Date:Mon.16.Mar 2000 18:22:22 GMT
Etag
一种实体头标,它向被发送的资源分配唯一的标识符,对于可以使用多种URL请求的资源,Etag可以确定实际被发送的资源是否为同一资源。例如:
Etag:293f-334f-1547812
Expires
指定实体的有效期。例如:
Expires: Mon.16.Mar 2000 18:22:55 GMT
From
请求头标。给定控制用户代理的人工用户的电子邮件地址。例如:
From:rolia_cn@hotmail.com
Host
被请求资源的主机名(以及可选的端口号)。对于使用HTTP/1.1的请求而言,此域是强制性的。例如:
Host:localhost
If-Modified-Since
如果包含了GET请求,导致该请求条件性的以来于资源上次修改日期。如果出现此头标,并且自指定日期以来。此资源已经被修改,应该返回一个304响应代码。例如:
If-Modified-Since: Mon.16.Mar 2000 18:22:22 GMT
If-Match
如果包含于一个请求,指定一个或多个请求实体标记(见ETag)。只发送其Etag与列表中标记匹配的资源。如:
If-Match: 293f-334f-1547812
If-None-Match
如果包含于一个请求,指定一个或多个请求实体标记(见ETag)。只有当资源的Etag不与列表中的任何一个条目匹配,操作才执行。如:
If-None-Match: 293f-334f-1547812
If-Range
指定资源的一个实体标记(见Etag),客户端已经拥有此资源的一个拷贝。必须与Range头标一同使用。如果此实体自上次被客户端检索以来还不曾被修改过。那么,服务器将只发送指定的范围。否则它将发送整个资源。如:
Rang:byte=0-454
If-Rang: 293f-334f-1547812
If-Unmodified-Since
与If-Modified-since相似,不过是在相反的意义上。只有自指定的日期来,被请求的实体还不曾被修改过,才会返回此实体。例如:
If-Unmodified-Since: Mon.16.Mar 2000 18:22:22 GMT
Last-Modified
指定被请求资源上次被修改的日期和时间。如:
Last-Modified: Mon.16.Mar 2000 18:22:22 GMT
Location
对于一个已经移动的资源。用于重定向请求者至另一个位置。与状态编码302(暂时移动)或者301(永久移动)配合使用。如:
Location:http://localhost/index.jsp
Max-Forwards
一个用于TRACE方法的请求头标,指定代理或网关的最大数目。该请求通过网关才得以路由。在通过请求传递之前,代理或网关应该减少此数目。如:
Max-Forwards:3
Parama
通用头标。它发送实体相关的信息。如:
Parama:no-cache
Proxy-Authenticate
类似于WWW-Authenticate,但是有意请求只来自请求链(代理)的下一个服务器的认证。如:
Proxy-Authenticate:Basic SDF1SF121EW=
Public
列表显示服务器所支持的方法集。如:
Public:OPTIONS,MGET,MHEAD,GET,HEAD
Range
指定一种度量单位和一个部分被请求资源的偏移范围。如:
Range:bytes=206-5513
Referer
一种请求头标域,标明产生请求的初始资源。对于HTML表单,它包含此表单的Web页面的地址。如:
Referer: http://localhost/search.html
Retry-After
响应头标域,由服务器和状态编码503(无法提供服务)配合发送,以标明再次请求之前应该等待多长时间。此时间既可以是一个日期,也可以是一种一秒为单位的数目。如:
Retry-After:8
Retry-After: Mon.16.Mar 2000 18:22:22 GMT
Server
一种表明Web服务器软件及版本号的头标。如:
Server:Apache/1.3.3(Win)
Transfer-Encoding
通用头标,标明对应该被接受方反向的信息体实施变换的类型。如:
Transfer-Encoding:chunked
Update
允许服务器指定一个新的协议或新的协议版本,与响应码101(切换协议)配合使用如:
Update:HTTP/2.0
User-Agent
定义用于产生请求的软件类型(典型的,如Web浏览器)。如:
User-Agent=Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Poco 0.31; InfoPath.2)
Vary
响应头标。用于表示使用服务器驱动的协商从可用的响应表示中选择响应实体。例如:
Vary:*
Via
一个包含所有中间主机和协议的通用头标。用于满足请求。如:
Via:1.0 fred.com,1.1 wila.com
Warning
响应头标。提供关于响应状态的补充信息。如:
Warning: 99 www.google.com Piano needs turnig
WWW-Authenticate
一个提示用户代理提供用户名和密码的响应头标。与状态码401(未授权)配合使用。
希望响应一个授权头标。如:
www-authenticate: Basic realm=rolia
    /**      * 类说明:HTTP响应头信息      *       * @author 作者: LiuJunGuang      * @version 创建时间:2011-10-29 上午09:11:08      */      public interface ResponseConstant {          /**          * 指示新的资源的位置          */          String LOCATION = "Location";          /**          * 指示服务器的类型          */          String SERVER = "Server";          /**          * 服务器发送的数据采用的编码类型 ; 例如:gzip          */          String CONTENT_ENCODING = "Content-Encoding";          /**          * 正文的长度          */          String CONTENT_LENGTH = "Content-Length";          /**          * 服务发送的文本的语言; 例如:zh-cn          */          String CONTENT_LANGUAGE = "Content-Language";          /**          * 服务器发送的内容的MIME类型 ; 例如:text/html; charset=GB2312          */          String CONTENT_TYPE = "Content-Type";          /**          * 文件的最后修改时间          */          String LAST_MODIFIED = "Last-Modified";          /**          * 指示客户端刷新频率。单位是秒; 例如:1;url=http://www.baidu.com          */          String REFRESH = "Refresh";          /**          * 指示客户端下载文件;例如: attachment; filename=aaa.zip          */          String CONTENT_DISPOSITION = "Content-Disposition";          /**          * 服务器端发送的Cookie; 例如:Set-Cookie:SS=Q0=5Lb_nQ; path=/search          */          String SET_COOKIE = "Set-Cookie";          /**          * 页面存活时间; 无缓存一般是0或-1,单位是毫秒(时间是相对于1970-01-01 00:00 00),          * 例如存活一天:System.System.currentTimeMillis()+24*60*60*1000          */          String EXPIRES = "Expires";          /**          * Http1.1 无缓存; 例如:no-cache          */          String CACHE_CONTROL = "Cache-Control";          /**          * Http1.0 无缓存; 例如:no-cache          */          String PRAGMA = "Pragma";          /**          * 保持与服务器的连接; 例如: close/Keep-Alive          */          String CONNECTION = "Connection";          /**          * 日期          */          String DATE = "Date";      }