WWW的核心—HTTP协议( 三 )


2.发送请求
打开一个连接后,客户机把请求消息送到服务器的停留端口上,完成提出请求动作 。
HTTP/1.0请求消息的格式为:
请求消息=请求行(通用信息请求头实体头) CRLF[实体内容]
请求 行=方法 请求URL HTTP版本号 CRLF
方法=GETHEADPOST扩展方法
U RL=协议名称 宿主名 目录与文件名
请求行中的方法描述指定资源中应该执行的动作,常用的方法有GET、HEAD和POST 。不同的请求对象对应GET的结果是不同的,对应关系如下:
对象GET的结果
文件文件的内容
程序该程序的执行结果
数据库查询 查询结果
HEAD——要求服务器查找某对象的元信息,而不是对象本身 。
POST——从客户机向服务器传送数据,在要求服务器和CGI做进一步处理时会用到POST方法 。POST主要用于发送Html文本中FORM的内容,让CGI程序处理 。
一个请求的例子为:
GET http://networking.zju.edu.cn/zju/index.htm HTTP/1.0
头信息又称为元信息,即信息的信息,利用元信息可以实现有条件的请求或应答。
请求头——告诉服务器怎样解释本次请求,主要包括用户可以接受的数据类型、压缩方法和语言等 。
实体头——实体信息类型、长度、压缩方法、最后一次修改时间、数据有效期等 。
实体——请求或应答对象本身 。
3.发送响应
服务器在处理完客户的请求之后,要向客户机发送响应消息 。
HTTP/1.0的响应消息格式如下:
响应消息=状态行(通用信息头响应头实体头) CRLF 〔实体内容〕
状 态 行=HTTP版本号 状态码 原因叙述
状态码表示响应类型
1××保留
2××表示请求成功地接收
3××为完成请求客户需进一步细化请求
4××客户错误
5××服务器错误
响应头的信息包括:服务程序名,通知客户请求的URL需要认证,请求的资源何时能使用 。
4.关闭连接
客户和服务器双方都可以通过关闭套接字来结束TCP/IP对话

推荐阅读