Я работаю над веб-сайтом, чтобы пользователи могли загружать видео в общую учетную запись YouTube для последующего доступа. После большой работы я смог получить активный токен и жизнеспособный токен обновления.
Однако код для инициализации объекта YouTubeService
выглядит следующим образом:
UserCredential credential;
using (var stream = new FileStream("client_secrets.json", FileMode.Open, FileAccess.Read))
{
credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
// This OAuth 2.0 access scope allows an application to upload files to the
// authenticated user YouTube channel, but doesn't allow other types of access.
new[] { YouTubeService.Scope.YoutubeUpload },
"user",
CancellationToken.None
);
}
var youtubeService = new YouTubeService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = Assembly.GetExecutingAssembly().GetName().Name,
});
У меня уже есть токен, и я хочу использовать мой. Я использую ASP.NET версии 3.5, и поэтому я не могу делать вызов async
в любом случае.
Можно ли создать объект YouTubeService
без вызова async
и использовать мой собственный токен? Есть ли способ создать объект учетных данных без авторизационного брокера?
В качестве альтернативы, приложение использовало YouTube API V2 в течение довольно долгого времени и имело форму, в которой был введен токен, и сделал почтовую операцию против URI YouTube, который был создан вместе с токеном в API V2. Есть ли способ реализовать это с помощью V3? Есть ли способ использовать Javascript для загрузки видео и, возможно, пример, который я мог бы использовать в своем коде?