【发布时间】:2015-12-11 14:18:21
【问题描述】:
好吧,我可以在 Youtube 上上传视频,但我没有找到从 Youtube 删除视频/视频的方法或相关代码。
这是我试图删除 youtube 视频的代码。
private async Task Run()
{
UserCredential credential;
using (var stream = new FileStream("client_secret.json", FileMode.Open, FileAccess.Read))
{
credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
new[] { YouTubeService.Scope.Youtube },
"user",
CancellationToken.None
);
}
var youtubeService = new YouTubeService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = Assembly.GetExecutingAssembly().GetName().Name
});
var videosDeleteRequest = youtubeService.Videos.Delete("Video ID");
await videosDeleteRequest.ExecuteAsync();
}
但是得到 403 响应
Error: Google.Apis.Requests.RequestError
Insufficient Permission [403]
Errors [
Message[Insufficient Permission] Location[ - ] Reason[insufficientPermis
sions] Domain[global]
]
一点帮助或任何可能的解决方案都将非常受欢迎。
【问题讨论】:
-
您的身份验证看起来正确,这也是正确的范围您确定您通过身份验证的用户/频道具有该视频 ID?尝试先做一个视频列表以确保。
-
我们可以使用相同的连接上传视频,但是当我们尝试获取视频列表或删除视频时,此连接不起作用。它给了我们 403 响应。
-
感谢@DaImTo 的帮助。现在我们可以使用带有访问令牌的谷歌删除 API 删除视频了。
-
出了什么问题?
-
@JyotishSingh 您如何在上述代码中使用该不记名令牌,我只是想不通?
标签: c#-4.0 google-api youtube-api google-oauth google-api-dotnet-client