天 津 医 康 互 联 科 技 有 限 公 司
——孙慧娟
2022年6月5日
HTTP introduce
• HTTP protocol(HyperText Transfer Protocol)是用于从
WWW服务器传输超文本到本地浏览器的传送协议。
• HTTP是一个应用层协议,由请求和响应构成,是一个标准
的客户端服务器模型。HTTP属于Tcp/Ip模型中的应用层协
议,而两个应用程序(这里指的就是浏览器与服务器)之
间要进行互相通信,首先得建立Tcp连接,然后浏览器才能
向服务器发送请求信息,服务器在接受到请求信息后,返
回相应的应答信息,浏览器接收到来自服务器的应答信息
后,对这些数据进行解释执行。
HTTP请求流程(1)
HTTP通信机制是在一次完整的HTTP通信过程中,Web浏览器与Web服务
器之间将完成下列7个步骤:
(1) 建立TCP连接
(2) Web浏览器向Web服务器发送请求命令
一旦建立了TCP连接,Web浏览器就会向Web服务器发送请求命令
例如:GET/sample/hello.jsp HTTP/1.1
(3) Web浏览器发送请求头信息
浏览器发送其请求命令之后,还要以头信息的形式向Web服务器发送一些
别的信息,之后浏览器发送了一空白行来通知服务器,它已经结束了该头
信息的发送。
HTTP请求流程(2)
(4) Web服务器应答
客户机向服务器发出请求后,服务器会客户机回送应
答,
HTTP/1.1 200 OK应答的第一部分是协议的版本号和
应答状态码
(5) Web服务器发送应答头信息
正如客户端会随同请求发送关于自身的信息一样,服
务器也会随同应答向用户发送关于它自己的数据及被
请求的文档。
(6) Web服务器向浏览器发送数据
Web服务器向浏览器发送头信息后,它会发送一个空
白行来表示头信息的发送到此为结束,接着,它就以
Content-Type应答头信息所描述的格式发送用户所请
求的实际数据
(7) Web服务器关闭TCP连接
HTTP请求格式
•当浏览器向Web服务器发出请求时,它向服务器传递了一个数据块,
也就是请求信息, Request 消息分为3部分,
•请求行(Request Line)
•请求头(Request Header)
•请求正文(Body)
Example
下面是一个HTTP请求的例子:
GET /sample.jsp HTTP/1.1
Host:localhost
Accept:image/gif.image/jpeg,*/*
Accept-Language:zh-cn
Connection:Keep-Alive
User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
Accept-Encoding:gzip,deflate
username=jinqiao&password=1234
请求行
请求行以一个方法符号开头,以空格分开,后面跟着请求的URI和协
议的版本
格式:Method Request-URI HTTP-Version
其中 Method表示请求方法;
Request-URI是一个统一资源标识符;
HTTP-Version表示请求的HTTP协议版本
例如:GET http://www.baidu.com/ HTTP/1.1
请求方法
请求方法有多种,各个方法的解释如下:
GET 请求获取Request-URI所标识的资源
POST 在Request-URI所标识的资源后附加新的数据
HEAD 请求获取由Request-URI所标识的资源的响应消息报头
PUT 请求服务器存储一个资源,并用Request-URI作为其标识
DELETE 请求服务器删除Request-URI所标识的资源
TRACE 请求服务器回送收到的请求信息,主要用于测试或诊断
CONNECT 保留将来使用
OPTIONS 请求查询服务器的性能,或者查询与资源相关的选项和需求