APP开发实战26-HTTP消息

7.3

HTTP消息

HTTP消息包括客户机向服务器的请求消息(Request)和服务器向客户机的响应消息(Response)。这两种类型的消息由一个起始行,一个或者多个头字段,一个指示头字段结束的空行和可选的消息体组成。

7.3.1请求消息

请求消息的第一行为下面的格式:

Method SP Request-URI SPHTTP-Version CRLF

Method表示对于Request-URI完成的方法,这个字段是大小写敏感的,包括OPTIONS、GET、HEAD、POST、PUT、DELETE和TRACE。

方法GET和HEAD应该被所有的通用WEB服务器支持,其他所有方法的实现是可选的。GET方法取回由Request-URI标识的信息。HEAD方法也是取回由Request-URI标识的信息,只是可以在响应时,不返回消息体。POST方法可以请求服务器接收包含在请求中的实体信息,可以用于提交表单,向新闻组、BBS、邮件群组和数据库发送消息。

SP表示空格。

Request-URI遵循URI格式,在此字段为星号(*)时,说明请求并不用于某个特定的资源地址,而是用于服务器本身。

HTTP-Version表示支持的HTTP版本,例如为HTTP/1.1。

CRLF表示换行回车符。

请求消息示例:

GEThttp://download.microtool.de:80/somedata.exe

Host: download.microtool.de

Accept: */*

Pragma: no-cache

Cache-Control:no-cache

User-Agent:Mozilla/4.04[en](Win95;I;Nav)

Range: bytes=554554-

7.3.2响应消息

响应消息的第一行为下面的格式:

HTTP-Version SPStatus-Code SP Reason-Phrase CRLF

HTTP-Version表示支持的HTTP版本,例如为HTTP/1.1。

Status- Code是一个三个数字的结果代码。Reason-Phrase给Status-Code提供一个简单的文本描述。Status-Code主要用于机器自动识别,Reason-Phrase主要用于帮助用户理解。

Status-Code的第一个数字定义响应的类别,后两个数字没有分类的作用。第一个数字可能取5个不同的值:

1xx:信息响应类,表示接收到请求并且继续处理

2xx:处理成功响应类,表示动作被成功接收、理解和接受

3xx:重定向响应类,为了完成指定的动作,必须接受进一步处理

4xx:客户端错误,客户请求包含语法错误或者是不能正确执行

5xx:服务端错误,服务器不能正确执行一个正确的请求

响应消息示例:

HTTP/1.0200OK

Date:Mon,31Dec200104:25:57GMT

Server:Apache/1.3.14(Unix)

Content-type:text/html

Last-modified:Tue,17Apr200106:46:28GMT

Etag:"a030f020ac7c01:1e9f"

Content-length:39725426

Content-range:bytes55******/40279980

�k�H����

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 组织:中国互动出版网(http://www.china-pub.com/) RFC文档中文翻译计划(http://...
    Palomar阅读 1,611评论 0 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,200评论 19 139
  • 转自: 老李的地下室:http://www.cnblogs.com/li0803/archive/2008/11/...
    yexue阅读 611评论 0 4
  • 一个周五的早上,快八点钟的时候,我正准备收拾完学校宿舍的卫生,去签到上班;忽然听到门卫大爷的呼叫,说有人找我;我急...
    唐人生阅读 375评论 0 2
  • 人类是一种很奇怪的动物,敏感坦白,不会占残障人士的便宜,却认为取笑弱智者不足为奇。 ——《献给阿尔吉侬的花束》...
    邹邹的太阳花们阅读 1,673评论 0 2