C# Vimeo Upload - не работает
Я пытаюсь загрузить видео в свой профессиональный аккаунт в Vimeo, используя документацию Vimeo по адресу: https://developer.vimeo.com/api/upload/videos
Просто, чтобы попробовать, я сделал простое консольное приложение на C#: я могу получить upload_ticket.
Когда я "ставлю" видео с помощью WebClient.UploadData, файл отправляется.
try
{
WebClient wc = new WebClient();
wc.Headers.Clear();
wc.Headers.Add("Authorization", "bearer xxxxxxxxxxx");
wc.Headers.Add("type", "streaming");
var vimeoTicket = JsonConvert.DeserializeObject<JObject>(wc.UploadString("https://api.vimeo.com/me/videos", "POST", ""));
var file = File.ReadAllBytes(@"d:\3.mp4");
wc.Headers.Clear();
var result= wc.UploadData(new Uri(vimeoTicket["upload_link_secure"].ToString()), "PUT", file);
WebClient wc1 = new WebClient();
wc1.Headers.Clear();
wc1.Headers.Add("Content-Range", "bytes */*");
//This line will get me an execption {"The remote server returned an error: (308) Resume Incomplete."}
var ff1 = wc1.UploadData(vimeoTicket["upload_link_secure"].ToString(), "PUT", new byte[0]);
}
catch (Exception h)
{
throw;
}
в документе API написано: "Если этот файл существует, он вернет ответ с кодом состояния HTTP 308 и заголовком Range с количеством байтов на сервере".
Так почему я получаю исключение без, и я не получаю никакого ответа, как в документе?
Спасибо
1 ответ
По какой-то причине WebClient обрабатывает ответ 308 как ошибку, сейчас мне удалось поместить нужный мне код в блок исключений - пока я не найду способ убедить, что WebClinet 308 не враг...