HTTPhtml
HTTP 协议是基于请求-响应的协议,客户端请求一个文件,服务器对该请求进行响应。HTTP 使用 TCP
协议, 默认使用80端口。 最初的HTTP协议版本是HTTP/0.9, 后被HTTP/1.0替代。 目前使用的版本是HTTP/1.1 .服务器
在 HTTP 协议中,老是由主动创建链接、发送 HTTP 请求的客户端来初始化一个事务。服务器不负责连
接客户端,或建立一个到客户端的回调链接(callback connection) 。app
Http requestjsp
一个 HTTP 请求包含如下三部分:
网站
Method—Uniform Resource Identifier (URI)—Protocol/Version Request headers Entity body
举例以下(注意三部分之间要有空行) :
url
POST /examples/default.jsp HTTP/1.1 Accept: text/plain; text/html Accept-Language: en-gb Connection: Keep-Alive Host: localhost User-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98) Content-Length: 33 Content-Type: application/x-www-form-urlencoded Accept-Encoding: gzip, deflate lastName=Franks&firstName=Michael
每一个 HTTP 请求都会有一个请求方法,HTTP1.1 中支持的方法包括,GET、POST、HEAD、OPTIONS、PUT 、
DELETE 和 TRACE。互联网应用中最经常使用的是 GET 和 POST。
URI 指明了请求资源的地址,一般是从网站更目录开始计算的一个相对路径,所以它老是以斜线“/”
开头的。URL 其实是 URI 的一种类型(参见 http://www.ietf.org/rfc/rfc2396.txt)) 。code
请求头(header)中包含了一些关于客户端环境和请求实体(entity)的有用的信息。例如,客户端浏
览器所使用的语言,请求实体信息的长度等。每一个请求头使用 CRLF(回车换行符, “\r\n” )分隔。注意请求
头的格式:
请求头名+英文空格+请求头值
请求头和请求实体之间有一个空白行(CRLF) 。这是 HTTP 协议规定的格式。HTTP 服务器,以此肯定请
求实体是从哪里开始的。上面的例子中,请求实体是:
orm
lastName=Franks&firstName=Michael