http视频文件传输(http 206)

本文介绍了HTTP协议中状态码206用于实现断点续传和视频文件播放的原理。在请求时,Range头信息用于指定所需内容范围;响应时,服务器返回Content-Range头和206状态码。视频播放时,video标签可能发送多个请求,如果Range设置不当可能导致视频无法显示。此外,服务器响应延迟、浏览器问题、离线缓存和ffmpeg编码问题都可能影响视频播放。
摘要由CSDN通过智能技术生成

http 206

http协议通过206实现断点续传,上传下载,以及video标签的是文件播放

request

Http部分内容请求头部需要指定:Range:bytes=0-
服务端,解析range范围,读取文件指定位置的数据,获取video视频

video标签会显示视频发送3个request,range(0-)和range(视频结尾信息段-),request视频文件头部后面的数据(一小段)
如果发过去的视频无显示,可以查看range的范围是否正确,range索引(0,filelen-1),如果操作文件索引最大值,可能出现视频无显示的情况

response

Http响应需要指定响应头:content-range:bytes:0-、httpcode为206
dotnet core异步写文件的方式返回整个文件,可以在远端电脑查看大文件,

Response.ContentType = "video/mp4";
Response.Headers["Cache-Control"] = "no-cache";
Response.StatusCode = (int)HttpStatusCode.OK;
return Response.SendFileAsync(file,0,fileInfo.Length);

分段传送

Response.ContentType = "video/mp4"
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

怪力左手

囧rz

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值