一、概述 协议HTTP定义了浏览器怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传送给浏览器。
- 面向事务的应用层协议
- 万维网的工作过程
3. TCP 80端口
4. 作用于C/S
5. 浏览器作为 HTTP 客户端通过 URL 向 HTTP 服务端即 WEB 服务器发送所有请求
6. 无连接,无状态,媒体独立
二、HTTP报文结构 HTTP面向文本,每个字段长度不确定 HTTP有两类报文:
- 请求报文-从客户向服务器发送请求报文
- 响应报文-从服务器到客户的回答 此两类报文都是由三个部分组成的(开始行,首部行,实体主体) 两种报文格式区别就是开始行的不同: 请求报文是请求行,响应报文是状态行。 请求行有三个内容:方法、请求资源的URL,HTTP的版本 状态行的三个内容:HTTP版本,状态码,解释状态码。
实例
下面实例是一点典型的使用GET来传递数据的实例:
客户端请求:
GET /hello.txt HTTP/1.1
User-Agent: curl/7.16.3 libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
Host: www.example.com
Accept-Language: en, mi
服务端响应:
HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache
Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
ETag: "34aa387-d-1568eb00"
Accept-Ranges: bytes
Content-Length: 51
Vary: Accept-Encoding
Content-Type: text/plain
输出结果:
Hello World! My payload includes a trailing CRLF.