【发布时间】:2016-04-10 13:08:48
【问题描述】:
我正在使用 Youtube Data API V3 使用 Oauth 2.0 身份验证将视频上传到我的 youtube 帐户。
UserCredential credential;
using (var stream = new FileStream("client_secrets.json", FileMode.Open, FileAccess.Read))
{
credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
new[] { YouTubeService.Scope.YoutubeUpload },
"user",
CancellationToken.None
);
}
var youtubeService = new YouTubeService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = Assembly.GetExecutingAssembly().GetName().Name
});
在身份验证过程中,它会显示登录和同意屏幕以获取如图所示的授权
我需要克服上述问题,以便在未经用户同意的情况下,我希望使用 OAuth 2.0 对 youtube 数据 API V3 进行身份验证并将视频上传到我的帐户。
所以我发现“服务帐户”可用于此类场景,但再次发现服务帐户不适用于 Youtube 数据 API,因为服务帐户需要关联的 YouTube 频道,并且您无法将新的或现有的频道与链接https://developers.google.com/youtube/v3/guides/moving_to_oauth的服务帐户 dotnet 中是否有任何替代方法可以跳过用户同意并以编程方式进行身份验证并以编程方式将视频上传到我的帐户
【问题讨论】:
-
您找到解决方案了吗?我也在寻找同样的东西!
-
在这里查看我的答案/解决方案stackoverflow.com/a/49516167/3790921
标签: .net youtube-api google-api-dotnet-client youtube-data-api