注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

唐老鸭的博客

太多的不如意让我们学会了抱怨,却忘记怎么去努力改变现状.

 
 
 

日志

 
 
 
 

【引用】HTTP协议格式  

2011-05-26 22:29:32|  分类: 一些文章 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
本文转载自Steven《HTTP协议格式》
HTTP协议:
h t t p协议使We b服务器和浏览器可以通过We b交换数据。它是一种请求/响应协议,即服务
器等待并响应客户方请求。H T T P不维护与客户方的连接,它使用可靠的T C P连接,通常采用
TCP 80端口。
客户/服务器传输过程可分为四个基一步骤:
 1) 浏览器与服务器建立连接;
 2) 浏览器向服务器请求文档;
 3) 服务器响应浏览器请求;
 4) 断开连接。
H T T P是一种无状态协议,它不维护连接的状态信息。
1. 客户请求
客户请求包含以下信息:
? 请求方法
? 请求头
? 请求数据
(1)请求方法是用于特定U R L或We b页面的程序
表32-3 HTTP请求方法
方法       描述
GET     请求指定的文档
HEAD    仅请求文档头
POST    请求服务器接收指定文档作为可执行的信息
PUT     用从客户端传送的数据取代指定文档中的内容
DELETE  请求服务器删除指定页面
OPTIONS 允许客户端查看服务器的性能
TRACE   用于测试—允许客户端查看消息回收过程
(2)头信息是可选项,它用于向服务器提供客户端的其他信息
如果客户采用某种方法获取数据(如P O S T ),数据就放在头( h e a d e r )之后;否则客户机等待
从服务器传来的响应。
2. 服务器响应
服务器响应包括以下关键部分:
? 状态码
? 响应头
? 响应数据
HTTP定义了多组返回给浏览器的状态码。
响应头向客户方提供服务器和/或请求文档的信息
表32-6 HTTP响应头
方法              描述
Server         Web服务器信息
Date           当前日期/时间
Last Modified  请求文档最近修改时间
Expires        请求文档过期时间
Content-length 数据长度(字节)
Content-type   数据M I M E类型
WWW-authenticate 用于通知客户方需要的认证信息(如用户名、口令等)

如果有客户方请求的数据,数据放在响应头之后,否则服务器断开连接。

3.通信实例:
1. 请求
在本例中,浏览器请求文档的U R L为h ttp://www.hostname.com/index.html。所有的请求均以空行结束。
GET /index.html HTTP/1.1
Accept: text/plain
Accept: text/html
User-Agent: Mozilla/4.5(WinNT)
                   (blank line)
(DATA)

浏览器使用G e t方法请求文档/ i n d e x . h t m l。浏览器声明它只能接收纯文本和h t m l数据,它使用M o z i l l a / 4 . 5 ( N e t s c a p e )引擎。
2. 响应
服务响应包括状态码、一些头信息(以空行结束)及请求数据,假设数据存在,则响应信息如下:
HTTP/1.1 200 OK
Date Sunday, 15-Jul-05 12:18:33 GMT
Server: Apache/1.3.6
MIME-version: 1.0
Content-type: test/html
Last-modified: Thursday,02-Jun-05 20:43:56 GMT
Content-length: 1432
        (blank line)
<HTML>              (此行开始为数据部分,与前面头部要空一行)
<HEAD>
<title>Example Server-Browser Communication</title>
</HEAD>
<BODY>
......
</BODY>
</HTML>

假设文档未找到,响应信息如下
HTTP/1.1 404 NOT FOUND
Date Sunday, 15-Jul-05 12:19:33 GMT
Server: Apache/1.3.6

注意:每行换行时用:/r/n,头部与数据段之间要多空已行,即用两次/r/n

HTTP协议状态码的含义

  号码 含义
-----------------------------------------
"100" : Continue
"101" : witching Protocols
"200" : OK
"201" : Created
"202" : Accepted
"203" : Non-Authoritative Information
"204" : No Content
"205" : Reset Content
"206" : Partial Content
"300" : Multiple Choices
"301" : Moved Permanently
"302" : Found
"303" : See Other
"304" : Not Modified
"305" : Use Proxy
"307" : Temporary Redirect
"400" : Bad Request
"401" : Unauthorized
"402" : Payment Required
"403" : Forbidden
"404" : Not Found
"405" : Method Not Allowed
"406" : Not Acceptable
"407" : Proxy Authentication Required
"408" : Request Time-out
"409" : Conflict
"410" : Gone
"411" : Length Required
"412" : Precondition Failed
"413" : Request Entity Too Large
"414" : Request-URI Too Large
"415" : Unsupported Media Type
"416" : Requested range not satisfiable
"417" : Expectation Failed
"500" : Internal Server Error
"501" : Not Implemented
"502" : Bad Gateway
"503" : Service Unavailable
"504" : Gateway Time-out
"505" : HTTP Version not supported

  评论这张
 
阅读(74)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018