HTTP协议2HTTP协议.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
HTTP协议2HTTP协议

2、HTTP协议 浏览器上网浏览网页,其原理也同属于上部分所描述的网络应用程序,浏览器就是客户端程序,网站服务器就是服务器程序,其占用80端口。当客户端程序访问网站时,在原理上就是访问服务器的80端口,浏览器和服务器交换数据的协议为HTTP协议,其原理就是发送请求、接收数据,而且数据都是文本形式传送的。 在介绍HTTP协议前,请下载并安装工具:HttpWatch,执行Setup.exe后,从桌面上启动HttpWatch Studio,点菜单『文件』-『打开』选择httpwatch.lic完成注册。安装完毕后,打开IE浏览器,点菜单『查看』=『浏览器栏』=『httpwatch』如下图: ? 这时IE浏览器的下方将出现两个框架的窗口,每一行都代表浏览器和服务器的一次交互,下面左边是发出的数据,右边是接收到的数据: ? 其它选项都是以此为基础进行整理便于阅读,后续开发过程务必注意必须以这里的『流』部分数据为准。 ? 请务必保持安装MASTUDIO开发群里的HttpWatch的版本,这对于后续请求技术支持提供问题数据有着重要的作用,在后续遇到问题的时候,只需要将浏览的过程保存为.hwl文件发送给MAS技术支持即可,同版本可交互方便。 ? 通过HttpWatch来观察浏览器和服务器的交互过程,可以更好的理解和分析HTTP协议,下面依据HTTP发展来依次介绍: ? 2.1、GET协议 ????当用户在浏览器把输入网址:/index.asp时,浏览器对网址进行拆分,为和/index.asp两部分,然后形成如下格式的数据包: ? GET?/index.asp?HTTP/1.1 Host: Accept:text/* User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Cookie: ASP.NET_SessionId=iayjigr33x5zqb45m2xeya3p; path=/ Cookie: iofficelanguage=language=zh-cn; expires=Fri, 31-Dec-9999 23:59:59 GMT ? 所有协议数据包都是文本字符串的形式,每行文本通过\r\n分开,最后一行有2个\r\n表示协议结束。 ? 第一行以GET开头,表示向服务器请求其后的目标/index.asp,请求的协议版本为HTTP/1.1,目标就是从网址中拆出来。 第二行Host表示请求的服务器域名为,也是从网址中拆出来。 第三行Accept表示浏览器接收服务器反馈数据的格式,text/*表示接收所有文本形式的反馈数据。 第四行User-Agent表示浏览器的标别,IE浏览器和Firfox浏览器各有不同。 第五行和第六行是Cookie,这个字段在下面另行描述。 ? WEB服务器接收到如上所描述数据包后,会返回如下格式的数据,其中html往下是我们可以在浏览器里通过查看源代码获取到,浏览器在整个和WEB服务器的交互过程中都隐藏了头部分,它们是事实存在而且很重要。 ? HTTP/1.1?200?OK Date: Wed, 30 Apr 2008 02:27:01 GMT Server: Microsoft-IIS/6.0 Content-Type: text/html; charset=gb2312 Content-Length: 9584 ?????? HTML title欢迎浏览/title body……/body /HTML ? 前面部分是HTTP协议的头,下面则是正文HTML代码,中间通过2个\r\n分开。首先看头部分: ? 第一行表示返回的状态代码为200?状态意义为OK。 第二行表示返回数据的时间。 第三行表示服务器的标识,如果IIS或者APACHE 第四行表示返回内容的类型和编码,这里表示返回GB2312编码的文本。 第五行表示返回数据的长度,也就是下面从HTML开始到结束部分的总长度。 ? 最下面部分的数据就是HTML代码,浏览器通过HTML代码进行显示页面。 ? 2.2、POST协议 当浏览器上显示输入表单,输入数据提交给服务器则和GET有所区别,假设有个表单形式如下图所示: 表单的代码如下,其有2个字段分别为szName、szAge,用户输入后提交给服务器这2个字段的内容。 form method=Post enctype=application/x-www-form-urlencoded action=/save.asp ? p姓名:?span INPUT TYPE=TEXT NAME=szName/span/p p年龄:?span INPUT TYPE=TEXT NAME=szAge/span/p ? p class=MsoNormal align

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档