热门问题
时间线
聊天
视角

HTTP头字段

维基媒体列表条目 来自维基百科,自由的百科全书

HTTP头字段
Remove ads

HTTP头字段(英语:HTTP header fields)是指在超文本传输协议(HTTP)的请求和响应消息中的消息头部分。它们定义了一个超文本传输协议事务中的操作参数。HTTP头部字段可以自己根据需要定义,因此可能在 Web 服务器和浏览器上发现非标准的头字段。

基本格式

协议头的字段,是在请求(request)或响应(response)行(一条消息的第一行内容)之后传输的。协议头的字段是以明文的字符串格式传输,是以冒号分隔的键名与键值对,以回车(CR)加换行(LF)符号序列结尾。协议头部分的结尾以一个空白字段标识,结果就是,也就是传输两个连续的CR+LF。在历史上,很长的行曾经可能以多个短行的形式传输;在下一行的开头,输出一个空格(SP)或者一个水平制表符(HT),表示它是一个后续行。在如今,这种换行形式已经被废弃[1]

类型

HTTP 头字段根据实际用途被分为以下 4 种类型:

  • 通用头字段(英语:General Header Fields
  • 请求头字段(英语:Request Header Fields
  • 响应头字段(英语:Response Header Fields
  • 实体头字段(英语:Entity Header Fields

字段名

RFC 7230RFC 7231RFC 7232RFC 7233RFC 7234RFC 7235 中,对一组核心字段进行了标准化。有一份对于这些字段的官方的登记册,以及 一系列的补充规范 ,由互联网号码分配局(IANA)维护。各个应用程序也可以自行定义额外的字段名字及相应的值。头字段的永久登记表页面存档备份,存于互联网档案馆)和临时登记表页面存档备份,存于互联网档案馆)目前由IANA维护。其他的字段名称和允许的值可以由各应用程序定义。

按照惯例,非标准的协议头字段是在字段名称前加上X-[2]前缀来标识。但这一惯例已在2012年6月被废弃,因为按照这种惯例,非标准字段变成标准字段时会引起很多不方便之处。[3]以前曾经有的使用Downgraded-的限制也在2013年3月被解除。[4]

字段值

某些字段中可以包含注释内容(例如User-Agent、Server和Via字段中),这些注释内容可由应用程序忽略[5]

很多字段的值中可以包含带有权重的质量(quality,常被简称为Q)的键值对,指定的“重量”会在内容协商的过程中使用[6]

大小限制

标准中没有对每个协议头字段的名称和值的大小设置任何限制,也没有限制字段的个数。然而,出于实际场景及安全性的考虑,大部分的服务器、客户端和代理软件都会实施一些限制。例如,Apache 2.3服务器在默认情况下限制每个字段的大小不得超过8190字节,同时,单个请求中最多有100个头字段[7]

请求字段

更多信息 协议头字段名, 说明 ...
Remove ads

常见的非标准请求字段

更多信息 字段名, 说明 ...

回应字段

更多信息 字段名, 说明 ...

常见的非标准回应字段

更多信息 字段名, 说明 ...

参见

参考文献

外部链接

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads