1、HTTP协议分析

合集下载

HTTP协议详解(深入理解)

HTTP协议详解(深入理解)

HTTP协议详解(深⼊理解)引⼊超⽂本传输协议(HTTP,HyperText Transfer Protocol)是互联⽹上应⽤最为⼴泛的⼀种⽹络协议。

所有的WWW⽂件都必须遵守这个标准。

设计HTTP最初的⽬的是为了提供⼀种发布和接收HTML页⾯的⽅法。

1960年美国⼈Ted Nelson构思了⼀种通过计算机处理⽂本信息的⽅法,并称之为超⽂本(hypertext),这成为了HTTP超⽂本传输协议标准架构的发展根基。

Ted Nelson组织协调万维⽹协会(World Wide Web Consortium)和互联⽹⼯程⼯作⼩组(Internet Engineering Task Force )共同合作研究,最终发布了⼀系列的RFC,其中著名的RFC 2616定义了HTTP 1.1。

http协议的作⽤及特点HTTP是⼀个客户端和服务器端请求和应答的标准(TCP)。

客户端是终端⽤户,服务器端是⽹站。

通过使⽤Web浏览器、⽹络爬⾍或者其它的⼯具,客户端发起⼀个到服务器上指定端⼝(默认端⼝为80)的HTTP请求。

(我们称这个客户端)叫⽤户代理(user agent)。

应答的服务器上存储着(⼀些)资源,⽐如HTML⽂件和图像。

(我们称)这个应答服务器为源服务器(origin server)。

在⽤户代理和源服务器中间可能存在多个中间层,⽐如代理,⽹关,或者隧道(tunnels)。

尽管TCP/IP协议是互联⽹上最流⾏的应⽤,HTTP协议并没有规定必须使⽤它和(基于)它⽀持的层。

事实上,HTTP可以在任何其他互联⽹协议上,或者在其他⽹络上实现。

HTTP只假定(其下层协议提供)可靠的传输,任何能够提供这种保证的协议都可以被其使⽤。

通常,由HTTP客户端发起⼀个请求,建⽴⼀个到服务器指定端⼝(默认是80端⼝)的TCP连接。

HTTP服务器则在那个端⼝监听客户端发送过来的请求。

⼀旦收到请求,服务器(向客户端)发回⼀个状态⾏,⽐如"HTTP/1.1 200 OK",和(响应的)消息,消息的消息体可能是请求的⽂件、错误消息、或者其它⼀些信息。

HTTP协议分析

HTTP协议分析

HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。

它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。

目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。

HTTP协议的主要特点可概括如下:1.支持客户/服务器模式。

2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。

请求方法常用的有GET、HEAD、POST。

每种方法规定了客户与服务器联系的类型不同。

由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。

3.灵活:HTTP允许传输任意类型的数据对象。

正在传输的类型由Content-Type加以标记。

4.无连接:无连接的含义是限制每次连接只处理一个请求。

服务器处理完客户的请求,并收到客户的应答后,即断开连接。

采用这种方式可以节省传输时间。

5.无状态:HTTP协议是无状态协议。

无状态是指协议对于事务处理没有记忆能力。

缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。

另一方面,在服务器不需要先前信息时它的应答就较快。

一、HTTP协议(URL)http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。

HTTP URL (URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息)的格式如下:http://host[":"port][abs_path]二、HTTP协议的请求http请求由三部分组成,分别是:请求行、消息报头、请求正文1、请求行以一个方法符号开头,以空格分开,后面跟着请求的URI和协议的版本,格式如下:Method Request-URI HTTP-Version CRLF其中Method表示请求方法;Request-URI是一个统一资源标识符;HTTP-Version表示请求的HTTP协议版本;CRLF表示回车和换行(除了作为结尾的CRLF外,不允许出现单独的CR或LF字符)。

HTTP协议分析

HTTP协议分析

HTTP协议分析1.简介HTTP协议(Hyper Text Transfer Protocol,超⽂本传输协议),是⽤于从万维⽹(WWW:World Wide Web )服务器传输超⽂本到本地浏览器的传送协议。

HTTP基于TCP/IP通信协议来传递数据。

HTTP基于客户端/服务端(C/S)架构模型,通过⼀个可靠的链接来交换信息,是⼀个⽆状态的请求/响应协议。

2.特点(1)HTTP是⽆连接:⽆连接的含义是限制每次连接只处理⼀个请求。

服务器处理完客户的请求,并收到客户的应答后,即断开连接。

采⽤这种⽅式可以节省传输时间。

(2)HTTP是媒体独⽴的:只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。

客户端以及服务器指定使⽤适合的MIME-type内容类型。

(3)HTTP是⽆状态:⽆状态是指协议对于事务处理没有记忆能⼒。

缺少状态意味着如果后续处理需要前⾯的信息,则它必须重传,这样可能导致每次连接传送的数据量增⼤。

另⼀⽅⾯,在服务器不需要先前信息时它的应答就较快。

HTTP请求报⽂HTTP请求报⽂由3部分组成(请求⾏+请求头+请求体):请求⾏:①是请求⽅法,GET和POST是最常见的HTTP⽅法,除此以外还包括DELETE、HEAD、OPTIONS、PUT、TRACE。

②为请求对应的URL地址,它和报⽂头的Host属性组成完整的请求URL。

③是协议名称及版本号。

请求头:④是HTTP的报⽂头,报⽂头包含若⼲个属性,格式为“属性名:属性值”,服务端据此获取客户端的信息。

与缓存相关的规则信息,均包含在header中请求体:⑤是报⽂体,它将⼀个页⾯表单中的组件值通过param1=value1&param2=value2的键值对形式编码成⼀个格式化串,它承载多个请求参数的数据。

不但报⽂体可以传递请求参数,请求URL也可以通过类似于“/chapter15/user.html? param1=value1&param2=value2”的⽅式传递请求参数。

HTTP协议的原理和应用场景分析

HTTP协议的原理和应用场景分析

HTTP协议的原理和应用场景分析HTTP协议是现代互联网的基础协议之一,它是超文本传输协议的缩写。

HTTP协议的主要作用是建立在互联网基础设施之上的应用层协议,它使得网络上的应用能够相互通信和交互。

本文将详细介绍HTTP协议的原理和应用场景分析。

一、HTTP协议的原理HTTP协议是一个客户端和服务器之间通信的协议,一个HTTP请求由客户端发送至服务器,服务器响应这个请求,发送相关的数据和内容回到客户端。

HTTP协议是建立在TCP/IP协议之上,使用TCP或UDP端口作为传输层。

HTTP协议的工作方式是客户端发送请求给服务器,服务器回应响应。

HTTP协议的请求部分由以下几个部分组成:1.请求方法:表示请求哪种操作,常见的有GET、POST、HEAD等。

2.请求URI:表示请求的资源及其位置,如:/index.html。

3.协议版本:表示使用HTTP协议的版本号,如:HTTP/1.1。

4.请求头部:包含一些对请求的描述,如Accept、User-Agent 等。

5.请求正文:请求数据,如POST请求时传送的数据。

HTTP协议的响应部分由以下几个部分组成:1.状态码:表示服务器对请求的处理结果,如200表示成功,404表示未找到。

2.协议版本:表示使用HTTP协议的版本号,如:HTTP/1.1。

3.响应头部:包含一些对响应的描述,如Content-Type、Content-Length等。

4.响应正文:响应数据,如网页的HTML代码。

二、HTTP协议的应用场景HTTP协议是互联网中最为常用的协议之一,被广泛应用在互联网上的各类应用程序中,下面是HTTP协议的几个典型的应用场景:1.万维网(WWW)WWW是HTTP协议最为常见和重要的应用场景。

通过HTTP 协议,我们可以在网页之间进行超链接,实现网页之间的跳转和交互。

2.下载文件HTTP协议可以实现文档、图片、音频等文件的下载,例如常见的软件下载、视频下载等。

HTTP协议数据结构分析

HTTP协议数据结构分析

HTTP协议数据结构分析⼀:⽹络协议HHTP 超⽂本传输协议 RFC2616⼆:HTTP报⽂主要结构 1)Request Method(get,post) ---请求⽅式 URL-------请求地址 Header------请求头 Body--------请求体 2)Response Status Code-------状态码 Header--------响应头 Body--------响应体三:HTTP状态码 200:成功,这个成功只是表⽰服务器正常处理完成了,并不能表⽰逻辑的正确性 301,320:跳转,⼀般可以在header中看到location,即跳转地址,区别是⼀个是临时跳转⼀个是固定跳转 304:未修改,服务器发现资源⽂件标识未变动,通知客户端读取本地缓存⽂件即可 400:客户端请求信息格式问题 403:⼀般是禁⽌访问,⽐如⽂件,⽬录等存在,但做了访问限制 404:⼀般为⽂件,⽬录不存在,但也可以将其他情况伪装成为不存在 500:出现这个⼀般都是服务端的代码直接抛出异常导致 502,503,504:这个类似,在⽹络异常等情况下都可以出现,也有很多代码抛出错误时候出现四:HTTP常规Header信息与作⽤(Request) Host:必须存在,域名指定(类似与分类,但端⼝⽤于区分访问那个域名) Accept:表⽰⾃⾝可接受的信息类容,类似建议,有⼦项 User-Agent:客户端标识信息(系统版本,浏览器,内核等) Cookie:特殊的信息存储位置,⽤于⾃动交互,⽆需代码⼲涉 Referer:来源,即通过什么页⾯或⽂件触发的请求,如果是浏览器地址栏回车则没有该值 Connection:控制长短链接,告诉对⽅当前链接状态(Keep-Alive,Close) Range:指定返回信息范围(断点持续⼦类使⽤) Content-Type:请求正⽂的类型,编码等信息 Content-Length:请求正⽂长度 If-Modifiled-Since:缓存相关,本地⽂件的标识有效期 If-None-Match:缓存相关,本地⽂件的特征码,对应返回信息中的ETag五:HTTP常规Header信息与作⽤(Reaponse) Date:时间,⼀般是服务器当前时间 Content-Encoding:返回正⽂的压缩编码类型 Content-Length:返回正⽂的长度 Content-Type:返回正⽂的类型,编码等信息 Cache-Control:缓存机制以及策略,时间,⽅式等 Etag:返回⽂件信息的特征码 Expires:返回⽂件信息的缓存有限期 Set-Cookie:要求设置的Cookie,可以多次出现的头信息 Location:⾃动重定向到其他新的地址,⼀般状态301,302时会出现 Connection:控制长短链接,告诉对⽅当前链接状态,默认Keep,当双⽅都为Keep时则链接会在下次沿⽤。

HTTP协议详细总结

HTTP协议详细总结

HTTP协议详细总结HTTP超⽂本传输协议,是WWW上应⽤的最多的协议。

了解和掌握HTTP协议是对程序⼈员的基本要求。

⼀、HTTP介绍 HTTP是⼀个基于请求/响应模式的、⽆状态的协议。

即,浏览器与服务端连接之后,浏览器向服务器发送⼀个请求,服务器返回响应信息之后,双⽅的链接就被关闭。

我们要知道,应⽤层的HTTP要使⽤传输层的TCP协议来完成。

⽽TCP协议是通过“3次握⼿”建⽴连接,是⾯向连接的协议。

默认情况下,浏览器与Web服务器上80端⼝监听的服务器程序建⽴TCP连接。

HTTP1.0是典型的请求/响应模式。

为了减少服务器的开销,HTTP1.1默认有“持续连接”的机制。

通过这种机制,客户端发送请求得到响应后,连接不会马上关闭,可以继续发送请求,还可以流⽔线发送多个请求、⽽不⽤等待每⼀个响应的到来。

⼆、URI和URL URI(统⼀资源标识符)纯粹是⼀种符号结构,⽤于指定构成Web资源的字符串的各个不同部分。

⽽URL(统⼀资源定位符)是⼀种特殊的URI,包含了⽤于查找某个资源的⾜够信息。

URI是⼀种语义上的抽象概念,可以是绝对的,也可以是相对的,⽽URL则必须提供⾜够的信息来定位,所以,是绝对的,⽽通常说的relative URL,则是针对另⼀个absolute URL,本质上还是绝对的。

三、HTTP请求格式如图:(CRLF表⽰回车符+换⾏符,不同颜⾊之间⽤空格隔开)第⼀⾏叫做请求⾏。

所以我们可以说HTTP请求由请求⾏、消息报头、请求正⽂组成。

1、请求⾏如上,请求⾏以⼀个⽅法符号开头,空格之后,⼀个请求URI,再空格,然后⼀个HTTP版本,最后⼀个回车换⾏。

其中请求⽅法有如下⼏种:我们在浏览器地址栏直接输⼊地址的时候,采⽤的就是GET⽅法。

HEAD⽅法⼀般⽤于测试超链接的有效性,因为它只是请求响应消息的报头。

消息报头后⾯会讲。

(HTTP协议中,请求⽅法必须全部⼤写)2、请求正⽂类似name=XXX&pwd=XXXX的内容四、HTTP响应格式与HTTP请求类似,如图:第⼀⾏叫做状态⾏。

http通信协议

http通信协议

http通信协议1. 简介HTTP(Hypertext Transfer Protocol)是一种用于传输超文本的应用层协议。

它是Web数据通信的基础,通过在客户端和服务器之间进行请求和响应来实现数据传输。

HTTP通信协议基于TCP/IP协议,使用可靠的连接,通常通过端口80进行通信。

它是一种无状态的协议,每个请求和响应之间是独立的,服务器不会维持任何客户端的状态信息。

2. HTTP请求HTTP请求由客户端发送给服务器,包含以下几个部分:请求行请求行包含请求方法、URL和协议版本,格式如下:请求方法 URL 协议版本常见的请求方法有GET、POST、PUT、DELETE等。

请求头请求头包含了关于请求的附加信息,格式为键值对,每个键值对占据一行。

常见的请求头有:•Host:指定服务器的域名或IP地址•User-Agent:指定客户端的信息•Content-Type:指定请求体的MIME类型•Cookie:指定客户端的Cookie信息请求体一些请求需要在请求体中传递数据,比如POST请求。

请求体的内容格式由Content-Type字段决定。

3. HTTP响应HTTP响应由服务器发送给客户端,包含以下几个部分:状态行状态行包含协议版本、状态码和状态消息,格式如下:协议版本状态码状态消息常见的状态码有200(成功)、404(未找到)、500(服务器内部错误)等。

响应头响应头包含了关于响应的附加信息,格式和请求头类似。

常见的响应头有:•Content-Type:指定响应体的MIME类型•Content-Length:指定响应体的长度•Set-Cookie:指定服务器返回的Cookie信息响应体响应体包含了实际的响应数据,格式由Content-Type字段决定。

4. HTTP状态管理由于HTTP协议是无状态的,为了在多个请求之间保持状态,服务器通过Cookie和Session来实现状态管理。

CookieCookie是服务器在HTTP响应头中返回给客户端的一小段数据。

HTTP协议格式详解

HTTP协议格式详解

HTTP协议格式详解HTTP(Hypertext Transfer Protocol,超文本传输协议)是一种用于传输超媒体文档(例如HTML)的应用层协议。

在互联网中,HTTP是客户端和服务器之间进行通信的基础协议。

本文将详细介绍HTTP协议的格式。

1. HTTP请求格式HTTP请求由请求行、请求头和请求体三部份组成。

1.1 请求行请求行包含三个字段:请求方法、请求URL和HTTP协议版本。

请求方法指定请求的类型,常见的有GET、POST、PUT和DELETE等。

请求URL指定了请求的资源路径。

HTTP协议版本指定了使用的HTTP协议版本,如HTTP/1.1。

示例:GET /index.html HTTP/1.11.2 请求头请求头包含了关于请求的附加信息,每一个字段都以键值对的形式浮现,字段之间使用冒号分隔。

常见的请求头字段有:- Host:指定服务器的域名或者IP地址。

- User-Agent:指定客户端的用户代理,通常是浏览器的名称和版本。

- Accept:指定客户端可以接受的响应内容类型。

- Content-Type:指定请求体的内容类型。

示例:Host: exampleUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8Content-Type: application/x-www-form-urlencoded1.3 请求体请求体包含了请求的数据,通常在POST请求中使用。

请求体的格式取决于Content-Type字段的值。

示例:username=admin&password=1234562. HTTP响应格式HTTP响应由状态行、响应头和响应体三部份组成。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

开放式课题实验报告实验名称:基于Wireshark软件的HTTP协议分析学号:姓名:指导教师:宫婧指导单位:理学院目录实验目的..........................................................错误!未定义书签。

1) 掌握Wireshark软件使用方法............. 错误!未定义书签。

2)理解HTTP协议工作原理.....................................错误!未定义书签。

实验任务.................................... 错误!未定义书签。

1) 抓取数据包........................... 错误!未定义书签。

2)分析数据包........................... 错误!未定义书签。

实验环境.............................. 错误!未定义书签。

软件介绍 (2)1) wireshark软件简介 (2)2) wireshark软件的应用 (2)3) wireshark软件的价值 (2)4) wireshark软件的操作简介 (3)HTTP协议详解............................... 错误!未定义书签。

1) HTTP协议基础概念....................... 错误!未定义书签。

2) HTTP协议工作流程....................... 错误!未定义书签。

3) HTTP协议请求响应信息 (6)HTTP请求报文信息....................................6HTTP响应报文信息....................................7HTTP数据包分析 (8)1)网络接口层信息 (10)2)网络层信息 (11)3)传输层信息 (12)4)应用层信息 (13)总结........................................ 错误!未定义书签。

参考文献.. (14)基于 Wireshark软件的HTTP协议分析实验目的:(1)掌握wireshark软件的使用方法,了解wireshark的工作原理;(2)掌握HTTP协议的工作原理。

实验任务:(1)抓取数据包学会利用wireshark软件进行抓包,学会过滤获取HTTP数据包(2)分析数据包学会获取数据包信息,了解HTTP工作机制。

实验环境:(1)Windows XP 操作环境(2)wireshark软件软件介绍:(1)wireshark简介Wireshark(前称Ethereal)是一个网络封包分析软件。

网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。

(2)wireshark的应用网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wireshark来检查资讯安全相关问题,开发者使用Wireshark来为新的通讯协定除错,普通使用者使用Wireshark来学习网络协定的相关知识,有的人也居心叵测的用它来寻找一些敏感信息……仔细分析Wireshark撷取的封包能够帮助使用者对于网络行为有更清楚的了解。

Wireshark不会对网络封包产生的内容进行修改,它只会反映出目前流通的封包资讯。

Wireshark本身也不会送出封包至网络上。

(3)Wireshark的价值在GNUGPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其源代码,并拥有针对其源代码修改及客制化的权利。

它是目前全世界最广泛的网络封包分析软件之一。

(4)Wireshark的操作简介点击wireshak图标,出现以下页面:点击此时,有图片显示可知,该PC机的之连了有线网络,因而,我们只能捕捉到有限网络信息,点击Start,即可捕捉网络信息。

若只想捕捉打开一个网页的信息,可以先打开该网页,再打开wireshark软件,点击Start,刷新该网页,即可获得该网页信息。

例如:下面的打开 ,获得该网页信息,获得的如下页面:此时,获得的是打开百度网页的所有协议的数据包,若只想得知一种协议的数据包信息,我们可以在下面这一过滤工具栏中打上协议名称,wireshark软件就可以过滤掉其他协议信息,仅出现想要的协议信息HTTP协议详解(1)HTTP协议基础概念HTTP协议(HyperText Transfer Protocol,超文本传输协议)是互联网上应用最为广泛的一种网络协议。

它是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。

所有的www文件都必须遵守这个标准。

它是客户端浏览器或其他程序与Web服务器之间的应用层通信协议。

在Internet上的Web服务器上存放的都是超文本信息,客户机需要通过HTTP协议传输所要访问的超文本信息。

HTTP包含命令和传输信息,不仅可用于Web访问,也可以用于其他因特网/内联网应用系统之间的通信,从而实现各类应用资源超媒体访问的集成。

它可以使浏览器更加高效,使网络传输减少。

它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。

HTTP协议通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。

如下图所示:默认HTTP的端口号为80,HTTPS的端口号为443。

(2)HTTP协议工作流程一次HTTP操作称为一个事务,其工作过程可分为四步:1)首先客户机与服务器需要建立连接。

只要单击某个超级链接,HTTP 的工作开始。

2)建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。

3)服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。

4)客户端接收服务器所返回的信息通过浏览器显示在用户的显示屏上,然后客户机与服务器断开连接。

如图所示:(3)HTTP协议请求响应信息:HTTP协议永远都是客户端发起请求,服务器回送响应。

HTTP协议是一个无状态的协议,同一个客户端的这次请求和上次请求是没有对应关系。

HTTP请求报文信息HTTP请求报文格式:<请求行><通用信息头><请求头><实体头><空行>[<报文体>][<报文尾部>]请求行 = 方法+URL+HTTP版本号+CRLF方法 = GET|HEAD|POST|……,请求类型是对大小写敏感的,下面简要叙述这几种方法的功能:1.GET方法表示取回由Request-URI标识的信息。

2.HEAD方法也表示取回由Request-URI标识的信息,只是可以在响应时,不返回消息体。

3.POST方法可以请求服务器接收包含在请求中的实体信息,可以用于提交表单,向新闻组、BBS、邮件群组和数据库发送消息。

当然还有其他的方法,如PATCH,COPY,MOVE,DELETE,LINK,UNLINK,OPTION URL = 协议名称+宿主名+目录与文件名URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息,其的格式如下:http://host[":"port][abs_path]http表示要通过HTTP协议来定位网络资源;host表示合法的Internet 主机域名或者IP地址;port指定一个端口号,默认端口为80;abs_path 指定请求资源的URI;如果URL中没有给出abs_path,那么当它作为请求URI时,必须以“/”的形式给出,通常这个工作浏览器自动帮我们完成。

HTTP版本号=HTTP0.9|HTTP1.0|HTTP1.1HTTP1.1是请求服务器响应的HTTP版本,HTTP1.1是我们目前最常使用的版本,它和HTTP0.9,HTTP1.0的最大不同之处在于,HTTP1.1是默认连接的,也就是说服务器在发送响应后,让连接连续为一些请求打开。

请求头请求头由关键字/值对组成,每行一对,关键字和值用英文冒号“:”分隔。

请求头部通知服务器有关于客户端请求的信息,典型的请求头有:User-Agent:产生请求的浏览器类型,允许客户端将它的操作系统,浏览器和其他属性告诉服务器,但这个报头域不是必须的。

Accept:请求报头域用于指定客户端接受哪些类型的信息,HTTP可以接受MIME信息Host:发送请求时,该报头域是必需的,主要用于指定被请求资源的Internet主机和端口号,它通常从HTTP URL中提取出来的Accept-Charset:用于指定客户端接受的字符集。

Accept-Encoding:类似于Accept,但是它是用于指定可接受的内容编码。

Accept-Language请求报头域类似于Accept,但是它是用于指定一种自然语言。

Authorization:主要用于证明客户端有权查看某个资源。

HTTP响应报文信息HTTP响应报文格式为:<状态行><通用信息头><响应头><实体头>[<报文体>状态行= HTTP版本号+状态码+原因叙述其中,状态码表示服务器发回的响应状态代码;原因叙述表示状态代码的文本描述。

状态码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值:1xx:指示信息--表示请求已接收,继续处理2xx:成功--表示请求已被成功接收、理解、接受3xx:重定向--要完成请求必须进行更进一步的操作4xx:客户端错误--请求有语法错误或请求无法实现5xx:服务器端错误--服务器未能实现合法的请求常见状态代码、状态描述、说明:200 OK:客户端请求成功400 Bad Request:客户端请求有语法错误,不能被服务器所理解401 Unauthorized:请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用403 Forbidden:服务器收到请求,但是拒绝提供服务404 Not Found:请求资源不存在,eg:输入了错误的URL500 Internal Server Error:服务器发生不可预期的错误503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后,可能恢复正常响应头:几种常见的响应头如下Allow:服务器支持哪些请求方法(如GET、POST等);Content-Encoding:文档的编码(Encode)方法。

相关文档
最新文档