我正在使用youtube-api将文件上传到YouTube,使用可恢复的上传协议。但是,当我尝试恢复中断的上传时,我对上传URL执行所需的空PUT以检查上传状态并获得预期的308响应,它将范围指定为
Range: bytes=0-47783737
然后我将剩余的字节PUT到我的上传网址:
Content-Range: bytes 47783738-48045881/48045882
Content-Length: 262144
然后使用SAME范围标题返回另一个308
响应。换句话说,它忽略了我之前的PUT,我再次尝试PUT文件的剩余字节。在完成简历过程后,我从未获得201。
我正在使用CURL进行这些调用,因为我们的软件是用C++
编写的,所以这些库对我没用。
检查上传状态时我的卷曲呼叫是:
PUT
接头:
授权:持票人
内容长度:0
内容范围:字节* / 48045882
且没有身体
当我获得308 http响应代码时,Range标头为" bytes = 0-47783737"然后我这样做:
PUT
接头:
授权:持票人
内容长度:262144
内容类型:视频/ *
内容范围:字节47783738-48045881 / 48045882
其中调用的主体是从文件的字节47783738到文件的末尾。