使用c#WebClient将类别添加到视频Vimeo API

本文关键字:视频 Vimeo API 添加 c#WebClient 使用 | 更新日期: 2023-09-27 18:28:44

我正试图通过他们的API向Vimeo视频添加一个类别。在文档中,它说我们可以通过put请求来实现这一点。

PUT  https://api.vimeo.com/videos/{video_id}/categories
[
    {
        "category": "animation"
    },
    {
        "category": "2D"
    }
]

我假设我们必须用json传递数据(查看给定的示例),并通过WebClient()对象传递类别。这是我的代码:

//add categories to video
//string category_uri = "https://api.vimeo.com/videos/" + video_id + "/categories";
WebClient wb_category = new WebClient();
wb_category.Headers.Add("Authorization", "Bearer" + vc.AccessToken);
wb_category.Headers.Add(HttpRequestHeader.ContentType, "application/json");
string file_category = "[{ '"category'": '"personal'"  }]";
var asByteArrayContent_cat = wb.UploadString("https://api.vimeo.com/videos/" + video_id + "/categories", "PUT", file_category);

但这给了我以下错误:

消息:远程服务器返回错误:(401)未经授权。

我也试着删除wb_category.Headers.Add(HttpRequestHeader.ContentType, "application/json");行,但它给了我同样的错误。有人能帮助我正确发送向视频添加类别的请求吗?我不想只使用WebClient()。任何其他课程也可以。提前谢谢。

使用c#WebClient将类别添加到视频Vimeo API

您的授权标头需要bearer和令牌之间有一个空格!该行应如下所示:

wb_category.Headers.Add("Authorization", "Bearer " + vc.AccessToken);

这是一个非常常见的错误,我一直在考虑为它抛出一个唯一的错误消息。