生活工程体验信仰哲学精神
投稿投诉
精神世界
探索历史
哲学文学
艺术价值
信仰创造
境界审美
体验技术
技能工具
工程信息
医学生产
生活运用
操作能力

文件断点续传功能的原理

1月21日 霸鲸观投稿
  现在的文件上传下载功能,都是支持断点续传的。那么这看似很简单的小功能,背后实现的原理是怎样的呢?
  断点续传支持从文件上次中断的地方开始传送数据,而并非是从文件开头传送。
  断点续传的原理如下:
  由于浏览器与服务端的通讯是基于HTTP协议,所以断点续传功能的原理就是靠HTTP请求来实现。
  断点续传功能最核心的原理就是利用HTTP请求中的两个字段:客户端请求头中的Range,和服务端响应头的ContentRange。
  我们举一个例子,模拟一下整个过程。
  1、浏览器请求服务器上的一个文件时,所发出的请求如下(假设文件名为file。zip,服务器域名为W):
  GETfile。zipHTTP1。1浏览器用GET方式获取file。zip文件,HTTP协议版本1。1
  Accept:imagegif,imagexxbitmap,imagejpeg,imagepjpeg,applicationvnd。ms
  excel,applicationmsword,applicationvnd。mspowerpoint可接受的响应内容(文件)类型
  AcceptLanguage:zhcn可接受的响应内容语言(简体中文)
  AcceptEncoding:gzip,deflate可接受的响应内容的编码方式
  UserAgent:Mozilla4。0(MSIE5。01;WindowsNT5。0)浏览器的身份标识(浏览器类型)
  Connection:KeepAlive浏览器想要优先使用的连接类型
  2、服务器收到请求后,寻找请求的文件,提取文件的信息,然后返回给浏览器,返回信息如下:
  200响应状态码(200标识成功)
  ContentLength123456789响应消息的长度(单位是字节)
  AcceptRangesbytes服务器所支持的内容范围(字节)
  DateMon,30Apr200112:56:11GMT此消息被发送时的日期和时间
  ETagW02ca57e173c11:95b资源的标识符
  ContentTypeapplicationoctetstream当前内容的类型
  ServerMicrosoftIIS5。0服务器名称
  LastModifiedMon,30Apr200112:56:11GMT所请求的对象的最后修改日期
  3、此时文件已经开始下载了,如果现在停止了下载,那么再次下载文件时就要从已经下载的地方继续下载。现在比如按下了继续下载,那么此时浏览器的请求内容如下:
  GETfile。zipHTTP1。1
  Accept:imagegif,imagexxbitmap,imagejpeg,imagepjpeg,applicationvnd。ms
  excel,applicationmsword,applicationvnd。mspowerpoint
  Range:bytes200000告诉服务器file。zip这个文件从200000字节开始传,前面的字节不用传了
  AcceptLanguage:zhcn
  AcceptEncoding:gzip,deflate
  UserAgent:Mozilla4。0(MSIE5。01;WindowsNT5。0)
  Connection:KeepAlive
  4、此时服务器收到这个请求后,返回的信息如下:
  206表示服务器已经成功处理了部分GET请求
  ContentLength123256789
  ContentRangebytes200000123456789表示已经返回了200000B的文件数据,同时也返回了文件的全部大小
  DateMon,30Apr200112:55:20GMT
  ETagW02ca57e173c11:95b
  ContentTypeapplicationoctetstream
  ServerMicrosoftIIS5。0
  LastModifiedMon,30Apr200112:55:20GMT
  以上就是断点续传的原理,在不同客户端实现时只需要找到不同的开发语言实现提交Range的方法即可。
  作为产品功能的设计者,每一个看似简单的小功能,其背后的实现原理都值得我们去研究,正所谓知其然,更要知其所以然。
投诉 评论 转载

科员德能绩勤廉个人总结,女,人,出生,参加工作,入党,大学学历,毕业于大学专业。现任科员。近年来,我一直将理论学习作为自身的重要任务,抱着学无止境的心态,自觉做到勤学多想,努力增强党性观念,提……360手机蓄力发招N4s骁龙版新色英伦灰上市不得不说,BOSS的话确实有着更重的份量,不日前周鸿袆亲自代表粉丝向360手机部门高管提建议希望新上线的N4s骁龙版有灰色款,话才刚刚落下,360手机新高管便发声360手机N4……抑郁症与躁狂症的常见误区1、如何诊断一个人是否得了抑郁症或躁狂症?既然有时候病得连自己都不知道自己病了,那么医生是怎么知道的呢?一些机智的心理学的小伙伴们(包括初学时的我),往往会回答看诊断标准……祝融号火星100天,设计寿命只有3个月?航天器超期服役传统了自5月15日成功实现登陆之后,祝融号已经在火星上运行101天,行驶距离约1000米,并且传回了10个G的数据,圆满完成了既定探测任务。可是就在这个时候,有消息说祝融号已经到设计……压缩面膜用水泡行吗教你正确的方法压缩面膜用水泡行吗压缩面膜最好不要用清水泡,主要是压缩面膜一旦用清水泡,清水里面的杂质会附和在面膜的表面,这是很难去除的,到时候清水里面的杂质,脏东西随着你敷面膜的时候残……正视造句用正视造句大全31、真正的勇士,敢于直面惨淡的人生,敢于正视淋漓的鲜血这是怎样的哀痛者和幸福者?32、照亮我的道路,并且不断地给我新的勇气去愉快地正视生活的理想,是善、美和真。要是没有……八个字的肉麻情话1:厮守海角,非你不娶!2:只要你要,只要我有。3:我这一生,只为吻你。4:知不知道,你很重要。5:我是真的,真的爱你!6:不离不弃生死相依。……宇宙动力原理(简介)内容简介什么是自然?为什么称为自然?自然有那几个最本质的不同元素?本质的不同元素如何构成宇宙自然的自洽?本质元素之间存在什么确定性的关系?本质元素可以被人类独立直观到吗?……文件断点续传功能的原理现在的文件上传下载功能,都是支持断点续传的。那么这看似很简单的小功能,背后实现的原理是怎样的呢?断点续传支持从文件上次中断的地方开始传送数据,而并非是从文件开头传送。……怎么在豆瓣里正确写书评学会还有机会签约我在豆瓣写书评已有一段时间,跟着土豆姐的学习课程,渐渐地也掌握了一些规律。下面讲讲在豆瓣写书评的好处。当你开始阅读一本书时,可以在豆瓣的搜索功能查找,如图:进入搜索……周日没安排?那是因为你不知道有场艺术盛会11月21日,深圳国际艺术博览会于深圳会展中心开幕,来自20个国家63个城市共100家艺术机构齐聚博览会现场,这期,我们将为大家搜罗看展亮点,附上现场实录实况第八届国际艺……二十年后的我2031年,我和昔日的小学同学罗佳卫,联手开办了现已排名世界第二的旷达企业,我有着旷达百分之五十的股份,可我最近在旷达企业有了麻烦。罗佳卫竟在会议上当众把我开除了,怎么说我也是……
超级马桶我的新年行动变色润唇膏晚上睡觉可以涂吗睡觉不建议用变色唇膏阅读在假期不久的将来一种外星物种无情攻击,明日边缘,地心引力等电影推荐心理障碍可致感染性疾病感谢阅读领导力的个盲点你有几个观华山原来女人吃精子的好处这么多微信用了三四年这个实用功能你知道吗拿下苹果订单,中国代工厂虎口夺食,狂妄的郭台铭被打脸
傻蛋儿棕熊和大导演豪猪骑马作文骑马历险记遗嘱继承宅基地的范围是什么?卸下你的累,让心清零NASA宣布与Epic合作开展火星题材的元宇宙项目,冠军可获每天只要几块钱,黑眼圈完全没有了,真是太开心了辽宁11广东!有谁注意到场边这位女球迷,镜头整整给了10秒婚姻的秘密五年级作文元旦趣事400字大学军训心得体会作文(通用4篇)正确吃烤肉让你远离肥胖又健康喜茶一支冰棍包多少钱一个喜茶中街一支冰棍包好吃吗

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找新乡渭南铜川松江山南雅安松原荃湾淮北昭通平凉鞍山赤峰苗栗保亭池州渝北株洲陇南濮阳三沙秀山密云鸡西