http协议-如何让post请求支持Range字段?

WP主题讨论 WP主题讨论 主题:1013 回复:2239

http协议-如何让post请求支持Range字段?

泛泛之交 发布于 2017-04-14 字数 286 浏览 1333 回复 3

用POST请求向我们自研的HTTPSVR发送数据,由于数据是分片的,我们在POST的head里面加上了Range字段来告诉server当前上传文件的偏移值。现在的问题是我们的请求被某些代理过滤掉了Range字段导致我们的sevrer拿不到该字段,我查了下RFC,也没见说POST里面不许加Range的,请问有没有其他的代替方案实现?

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(3

晚风撩人 2017-09-09 3 楼

如果服务器不支持的话,就只能自己用脚本写了。post请求过去,服务器端的脚本知道要哪些,然后传回去。

虐人心 2017-08-23 2 楼

这跟post没关系,range是http1.1协议中定义的参数,
某些不靠谱cdn会丢弃某些request header,或者不转发某些header这样造成了问题
应该在这个代理这里解决,如果无法解决任何替代方案都不能完美实现range(例如传递offset参数/request/?offset=123)
如果server没有接收到range参数应该返回全部结果,你应使你的程序可以针对全部解决进行处理,即使range参数未生效也可以正常处理,不要依赖range参数

甜柠檬 2017-05-18 1 楼

range不是起你那个作用的……
range代表的是从HTTP端接收数据的时候,接收的是Server数据的哪一段。POST永远是提交完整的数据。你提交一部分数据,服务器怎么处理相应啊……
按照你的需求,应该是提交一个类似这样的表单:
begin=0&end=1000&data=.....

begin=1000&end=2000&data=.....

一切要按着标准来,别随便曲解标准啊……