ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:806KB ,
资源ID:14601616      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/14601616.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(HTTP协议详解模板Word文档格式.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

HTTP协议详解模板Word文档格式.docx

1、 keep-alive区分什么是HTTP协议协议是指计算机通信网络中两台计算机之间进行通信所必需共同遵守要求或规则, 超文本传输协议(HTTP)是一个通信协议, 它许可将超文本标识语言(HTML)文档从Web服务器传送到用户端浏览器现在我们使用是HTTP/1.1 版本Web服务器, 浏览器,代理服务器当我们打开浏览器, 在地址栏中输入URL, 然后我们就看到了网页。 原理是怎样呢?实际上我们输入URL后, 我们浏览器给Web服务器发送了一个Request, Web服务器接到Request后进行处理, 生成对应Response, 然后发送给浏览器, 浏览器解析Response中HTML,这么我们

2、就看到了网页, 过程以下图所表示我们Request 有可能是经过了代理服务器, 最终才抵达Web服务器。过程以下图所表示代理服务器就是网络信息中转站, 有什么功效呢?1. 提升访问速度, 大多数代理服务器都有缓存功效。2. 突破限制, 也就是翻墙了3. 隐藏身份。URL详解URL(Uniform Resource Locator) 地址用于描述一个网络上资源, 基础格式以下schema:/host:port#/path/./? query-string#anchorscheme 指定低层使用协议(比如: http, https, ftp)host HTTP服务器IP地址或者域名port# HT

3、TP服务器默认端口是80, 这种情况下端口号能够省略。假如使用了别端口, 必需指明, 比如 :8080/path 访问资源路径query-string 发送给http服务器数据anchor- 锚URL 一个例子Schema: httphost: .compath: /sj/test/test.aspxQuery String: name=sviergn&x=trueAnchor: stuffHTTP协议是无状态http协议是无状态, 同一个用户端这次请求和上次请求是没有对应关系, 对http服务器来说, 它并不知道这两个请求来自同一个用户端。 为了处理这个问题, Web程序引入了Cookie机

4、制来维护状态.打开一个网页需要浏览器发送很数次Request1. 当你在浏览器输入URL 时候, 浏览器发送一个Request去获取 html. 服务器把Response发送回给浏览器.2. 浏览器分析Response中 HTML, 发觉其中引用了很多其她文件, 比如图片, CSS文件, JS文件。3. 浏览器会自动再次发送Request去获取图片, CSS文件, 或者JS文件。4. 等全部文件都下载成功后。 网页就被显示出来了。HTTP消息结构先看Request 消息结构, Request 消息分为3部分, 第一部分叫Request line, 第二部分叫Request header, 第三

5、部分是body. header和body之间有个空行, 结构以下图第一行中Method表示请求方法,比如POST,GET, Path-to-resoure表示请求资源, Http/version-number 表示HTTP协议版本号当使用是 方法时候, body是为空比如我们打开博客园首页request 以下GET Host:抽象东西, 难以了解, 老感觉是虚, 所谓眼见为实, 实际见到东西, 我们才能了解和记忆。 我们今天用Fiddler, 实际看看Request和Response.下面我们打开Fiddler 捕捉一个博客园登录Request 然后分析下它结构, 在Inspectors ta

6、b下以Raw方法能够看到完整Request消息, 以下图我们再看Response消息结构, 和Request消息结构基础一样。 一样也分为三部分,第一部分叫Response line, 第二部分叫Response header, 第三部分是body. header和body之间也有个空行, 结构以下图HTTP/version-number表示HTTP协议版本号, status-code 和message 请看下节状态代码具体解释.我们用Fiddler 捕捉一个博客园首页Response然后分析下它结构, 在Inspectors tab下以Raw方法能够看到完整Response消息, Get和P

7、ost方法区分Http协议定义了很多与服务器交互方法, 最基础有4种, 分别是GET,POST,PUT,DELETE. 一个URL地址用于描述一个网络上资源, 而HTTP中GET, POST, PUT, DELETE就对应着对这个资源查, 改, 增, 删4个操作。 我们最常见就是GET和POST了。GET通常见于获取/查询资源信息, 而POST通常见于更新资源信息.我们看看GET和POST区分1. GET提交数据会放在URL以后, 以? 分割URL和传输数据, 参数之间以&相连, 如EditPosts.aspx? name=test1&id=123456. POST方法是把提交数据放在HTTP

8、包Body中.2. GET提交数据大小有限制(因为浏览器对URL长度有限制), 而POST方法提交数据没有限制.3. GET方法需要使用Request.QueryString来取得变量值, 而POST方法经过Request.Form来获取变量值。4. GET方法提交数据, 会带来安全问题, 比如一个登录页面, 经过GET方法提交数据时, 用户名和密码将出现在URL上, 假如页面能够被缓存或者其她人能够访问这台机器, 就能够从历史统计取得该用户账号和密码.状态码Response 消息中第一行叫做状态行, 由HTTP协议版本号, 状态码, 状态消息 三部分组成。状态码用来告诉HTTP用户端,HTT

9、P服务器是否产生了预期Response.HTTP/1.1中定义了5类状态码, 状态码由三位数字组成, 第一个数字定义了响应类别1XX 提醒信息 - 表示请求已被成功接收, 继续处理2XX 成功 - 表示请求已被成功接收, 了解, 接收3XX 重定向 - 要完成请求必需进行更深入处理4XX 用户端错误 - 请求有语法错误或请求无法实现5XX 服务器端错误 - 服务器未能实现正当请求看看部分常见状态码200 OK最常见就是成功响应状态码200了, 这表明该请求被成功地完成, 所请求资源发送回用户端以下图, 打开博客园首页302 Found重定向, 新URL会在response 中Location中

10、返回, 浏览器将会自动使用新URL发出新Request比如在IE中输入, . HTTP服务器会返回302, IE取到Response中Location header新URL, 又重新发送了一个Request.304 Not Modified代表上次文档已经被缓存了, 还能够继续使用, 比如打开博客园首页, 发觉很多Response status code 都是304提醒: 假如你不想使用当地缓存能够用Ctrl+F5 强制刷新页面400 Bad Request 用户端请求与语法错误, 不能被服务器所了解403 Forbidden 服务器收到请求, 不过拒绝提供服务404 Not Found请求资

11、源不存在(输错了URL)比如在IE中输入一个错误URL, 500 Internal Server Error 服务器发生了不可预期错误503 Server Unavailable 服务器目前不能处理用户端请求, 一段时间后可能恢复正常HTTP Request header使用Fiddler 能很方便查看Reques header, 点击Inspectors tab -Request tab- headers 以下图所表示.header 有很多, 比较难以记忆, 我们也根据Fiddler那样把header 进行分类, 这么比较清楚也轻易记忆。Cache 头域If-Modified-Since作用

12、: 把浏览器端缓存页面最终修改时间发送到服务器去, 服务器会把这个时间与服务器上实际文件最终修改时间进行对比。假如时间一致, 那么返回304, 用户端就直接使用当地缓存文件。假如时间不一致, 就会返回200和新文件内容。用户端接到以后, 会丢弃旧文件, 把新文件缓存起来, 并显示在浏览器中.比如: If-Modified-Since: Thu, 09 Feb 09:07:57 GMT实例以下图If-None-Match If-None-Match和ETag一起工作, 工作原理是在HTTP Response中添加ETag信息。 当用户再次请求该资源时, 将在HTTP Request 中加入If-

13、None-Match信息(ETag值)。假如服务器验证资源ETag没有改变(该资源没有更新), 将返回一个304状态告诉用户端使用当地缓存文件。不然将返回200状态和新资源和Etag. 使用这么机制将提升网站性能 If-None-Match: 03f2b33c0bfcc1:0Pragma 预防页面被缓存, 在HTTP/1.1版本中, 它和Cache-Control:no-cache作用一模一样Pargma只有一个使用方法, 比如: Pragma: no-cache注意: 在HTTP/1.0版本中, 只实现了Pragema:no-cache, 没有实现Cache-ControlCache-Control 这个是非常关键规则。 这个用来指定Response-Request遵照缓存机制。各个指令含义以下Cache-Control:Public 能够被任何缓存所缓存()Private 内容只缓存到私有缓存中no-cache 全部内容都不会被缓存还有其她部分使用

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1