使用 WebClient 可恢复上传 class

Resumable uploads with WebClient class

我正在尝试上传视频,但从服务器获得的结果为空(0 字节)。

对于第 1 步,我这样调用 api:

var json = vc.UploadCreate("/me/videos", "tus", 3021075, "POST");

"tus"是方法,“3021075”是文件大小。我正在保存 upload_link & uri,然后像这样发出第二个请求:

string filepath = @"C:\videoplayback.mp4";
var rslt = vc.UploadPatch2(uploadlink, filepath);

我的 UploadPatch2() 方法:

WebClient wc = new WebClient();
wc.Headers.Add("Tus-Resumable", "1.0.0");
wc.Headers.Add("Upload-Offset", "0");
wc.Headers.Add("Content-Type", "application/offset+octet-stream");
wc.Headers.Add("Authorization", "Bearer ******");

var file = File.ReadAllBytes(filepath);

var result = wc.UploadData(upload_link, "PATCH", file);

当尝试发送 "PATCH" 请求时,如 API 中所述,它失败并显示错误:

The remote server returned an error: (404) Not Found.

使用 "PUT" 时,没有异常,但 "result" 从服务器返回 0 个字节。

好吧,这似乎只是 Vimeo API 的一个错误。 文件已上传,但响应为错误 404。