`
foryougeljh
  • 浏览: 113397 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

http协议详解ppt

 
阅读更多

<!-- gte="" mso="" 9=""><![endif]--><!-- gte="" mso="" 9=""><![endif]--><!-- gte="" mso="" 10=""><style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.5pt; mso-bidi-font-size:11.0pt; font-family:宋体; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:宋体; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-font-kerning:1.0pt;} </style><![endif]--><!--![endif]--><!--!--><!--![endif]--><!--!--><!--![endif]--><!--!-->![endif]-->!-->![endif]-->!-->![endif]-->!-->

HTTPhypertext transferprotocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程。

HTTP协议的版本:HTTP/1.0HTTP/1.1

区别:在HTTP1.0协议中,客户端与web服务器建立连接后,只能获得一个web资源

HTTP1.1协议,允许客户端与web服务器建立连接后,在一个连接上获取多个web资源

HTTP请求

客户端连上服务器后,向服务器请求某个web资源,称之为客户端向服务器发送了一个HTTP请求。

一个完整的HTTP请求包括如下内容:

一个请求行、若干消息头、以及实体内容,其中的一些消息头和实体内容都是可选的,消息头和实体内容之间要用空行隔开。如下所示

GET /books/java.html HTTP/1.1

/*请求行, 请求行用于描述客户端的请求方式、请求的资源名称,以及使用的HTTP协议版本号*/

Accept: */*

Accept-Language: en-us //客户端的一些环境信息

Connection: Keep-Alive

Host: localhost //客户端请求哪台主机

Referer: http://localhost/links.asp

User-Agent: Mozilla/4.0

Accept-Encoding: gzip, deflate

//一个空行

常用的请求方式POSTGET

不管POSTGET,都用于向服务器请求某个WEB资源,这两种方式的区别主要表现在数据传递上,客户端通过这两种方式都可以带一些数据给服务器:

GET方式,在请求的URL地址后以?的形式带上交给服务器的数据,多个数据之间以&进行分隔,GET方式的特点:在URL地址后附带的参数是有限制的,其数据容量不能超过1K。例如:

GET/mail/1.html?name=abc&password=xyz HTTP/1.1

POST方式,在请求的实体内容中向服务器发送数据,例如:

POST/servlet/ParamsServlet HTTP/1.1

Host:

Content-Type:application/x-www-form-urlencoded

Content-Length:28

//一个空行

name=abc&password=xyz

Post方式的特点:传送的数据量无限制。


消息头

HTTP请求中的常用头

Accept: text/html,image/*

Accept-Charset: ISO-8859-1

Accept-Encoding: gzip,compress

Accept-Language: en-us,zh-cn

Host: www.it315.org:80

If-Modified-Since: Tue, 11 Jul 2000 18:23:51GMT

Referer: http://www.it315.org/index.jsp

User-Agent: Mozilla/4.0 (compatible; MSIE5.5; Windows NT 5.0)

Cookie

Connection: close/Keep-Alive

Date: Tue, 11 Jul 2000 18:23:51 GMT

HTTP响应

一个HTTP响应代表服务器向客户端回送的数据,它包括:

一个状态行、若干消息头、以及实体内容,其中的一些消息头和实体内容都是可选的,消息头和实体内容之间要用空行隔开。

HTTP/1.1 200 OK

/*状态行用于描述服务器对请求的处理结果*/

Server: Microsoft-IIS/5.0

Date: Thu, 13 Jul 2000 05:46:53 GMT

Content-Length: 2291

Content-Type: text/html

Cache-control: private

/*消息头用于描述服务器的基本信息,以及数据的描述,服务器通过这些数据的描述信息,可以通知客户端如何处理等一会儿它回送的数据*/

<HTML>

<BODY>

……

/*实体内容代表服务器向客户端回送的数据*/

状态行

格式: HTTP版本号 状态码 原因叙述<CRLF>

举例:HTTP/1.1200 OK

响应状态码分为5

100199表示成功接收请求,要求客户端继续提交下一次请求才能完成整个处理过程

200299表示成功接收请求并已完成整个处理过程,常用200

300399为完成请求,客户需进一步细化请求。例如,请求的资源已经移动一个新地址,常用302307304

400499客户端的请求有错误,常用404

500599服务器端出现错误,常用500

HTTP请求中的常用响应头

Location: http://www.it315.org/index.jsp

Server:apache tomcat

Content-Encoding: gzip

Content-Length: 80

Content-Language: zh-cn

Content-Type: text/html; charset=GB2312

Last-Modified: Tue, 11 Jul 2000 18:23:51GMT

Refresh: 1;url=http://www.it315.org

Content-Disposition: attachment; filename=aaa.zip

Transfer-Encoding: chunked

Set-Cookie:SS=Q0=5Lb_nQ; path=/search

Expires: -1

Cache-Control: no-cache

Pragma: no-cache

Connection: close/Keep-Alive

Date: Tue, 11 Jul 2000 18:23:51 GMT

通用信息头

既能用于请求,又能用于响应的一些消息头

Cache-Control: no-cache

Pragma: no-cache

Connection: close/Keep-Alive

Date: Tue, 11 Jul 2000 18:23:51 GMT


*2,HTTP请求头和响应头的含义
请求头:
Accept: text/html,image/*(浏览器可以接收的类型)
Accept-Charset: ISO-8859-1(浏览器可以接收的编码类型)
Accept-Encoding: gzip,compress(浏览器可以接收压缩编码类型)
Accept-Language: en-us,zh-cn(浏览器可以接收的语言和国家类型)
Host: www.it315.org:80(浏览器请求的主机和端口)
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT(某个页面缓存时间)
Referer: http://www.it315.org/index.jsp(请求来自于哪个页面)
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)(浏览器相关信息)
Cookie:(浏览器暂存服务器发送的信息)
Connection: close(1.0)/Keep-Alive(1.1)(HTTP请求的版本的特点)
Date: Tue, 11 Jul 2000 18:23:51 GMT(请求网站的时间)

响应头:
Location: http://www.it315.org/index.jsp(控制浏览器显示哪个页面)
Server:apache tomcat(服务器的类型)
Content-Encoding: gzip(服务器发送的压缩编码方式)
Content-Length: 80(服务器发送显示的字节码长度)
Content-Language: zh-cn(服务器发送内容的语言和国家名,用于国际化)
Content-Type: image/jpeg; charset=UTF-8(服务器发送内容的类型和编码类型)
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT(服务器最后一次修改的时间)
Refresh: 1;url=http://www.it315.org(控制浏览器1秒钟后转发URL所指向的页面)
Content-Disposition: attachment; filename=aaa.jpg(服务器控制浏览器发下载方式打开文件)
Transfer-Encoding: chunked(服务器分块传递数据到客户端)
Set-Cookie:SS=Q0=5Lb_nQ; path=/search(服务器发送Cookie相关的信息)
Expires: -1(服务器控制浏览器不要缓存网页,默认是缓存)
Cache-Control: no-cache(服务器控制浏览器不要缓存网页)
Pragma: no-cache(服务器控制浏览器不要缓存网页)
Connection: close/Keep-Alive(HTTP请求的版本的特点)
Date: Tue, 11 Jul 2000 18:23:51 GMT(响应网站的时间)

分享到:
评论

相关推荐

    HTTP协议详解 培训资料(PPT)

    HTTP协议详解:介绍HTTP的协议相关内容。

    Http协议详解.ppt

    Http协议详解

    http协议详解.ppt

    Hypertext Transfer Protocol -- HTTP/1.1 Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for ...

    CoAP协议详解.ppt

    CoAP是IETF为满足物联网,M2M场景制定的协议,特点如下: 类似HTTP,基于REST模型:Servers将Resource通过URI形式呈现,客户端可以通过诸如GET,PUT,POST,DELETE方法访问,但是相对HTTP简化实现降低复杂度(代码更小...

    传智播客jdbc详解ppt(方立勋老师的)

    创智播客方立勋老师讲解JDBC的ppt,经典,详细,深入,透彻。值得学习

    HTTP协议 文档合集

    文档列表: 1.《HTTP权威指南》中文版.pdf 2. HTTP协议中文版.pdf 3. http协议工作原理.ppt 4. HTTP协议详解.pdf

    ComputerNetworks:一套可以从0开始自学的《图解计算机网络》【详解+PPT】教程

    《图解HTTP协议》 项目说明 此项目目前仍在继续更新! 参与贡献 GitHub地址 Fork 本仓库 新建 Feat_xxx 分支 提交代码 新建 Pull Request 项目反馈及改进 如果您在学习或者部署本项目的时候遇到了任何问题,或者项目...

    C++网络编程进阶(代码+PPT)

    配合视频https://b23.tv/PiMvXD 第30讲 TCPIP协议族详解 第31讲 原始套接字和ICMP、PING TRACEROUTE工具实现 第32讲 HTTP和FTP协议原理及服务端实现 第33讲 P2P和NAT穿透流媒体传输 第34讲 WinSock2 SPI

    爬虫理论剖析到实战演练视频课程上.rar

    3-1HTTP以及Https协议基础详解ev4.mp4 3-2HTTP的request请求详解ev4mp4 3-3HTTP请求python库实战ev4mp4 34HTTP的response响应以及python库ev4.mp4 4-1 wireshark安装与使用教程ev4mp4 4-2 Fiddler安装与使用教程ev4....

    IPFSNotebook:IPFS学习笔记

    IPFS——它能取代HTTP协议? PPT: IPFS简介 协议实验室成立于2014年5月,由IPFS和Filecoin的发明者Juan Benet创立。在2014年夏天,加入了美国顶级孵化器Y-Combinator。协议实验室于2015年1月向世界发布了IPFS,从此...

Global site tag (gtag.js) - Google Analytics