Я пытаюсь использовать Google Calendar v3 api, используя .net-клиент. Я рассматриваю гибридный подход. Я разрешил свое приложение, используя oauth2, используя только http post request, и я получаю access_token. Но как .net-клиент календаря v3 api, мне нужно сделать ссылку для календаря. Мне нужно найти способ получить эту служебную ссылку, используя мой токен. Посмотрите на этот фрагмент кода:Как создать объект CalendarService с помощью access_token?
Event event = new Event()
{
Summary = "Appointment",
};
Event recurringEvent = service.Events.Insert(event, "primary").Fetch();
// here "service" is authenticate calendarservice instance.
Console.WriteLine(recurringEvent.Id);
и это код, чтобы пройти аутентификацию calendarservice Например:
UserCredential credential;
using (var stream = new FileStream("client_secrets.json", FileMode.Open, FileAccess.Read))
{
credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
new[] { CalendarService.Scope.Calendar },
"user", CancellationToken.None, new FileDataStore("something"));
}
// Create the service instance.
var service = new CalendarService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "Books API Sample",
});
Этот код показывает поток кода авторизации согласно Google.Apis.Auth.OAuth2 и затем выполните служебную ссылку, используя эти учетные данные. На самом деле это вспомогательная утилита для управления потоком кода авторизации. Чтобы быть ясным, я не использую эту процедуру (эта вспомогательная утилита). Я пытаюсь сделать все на основном уровне, что означает, что я сделал поток кода авторизации вручную простым HTTP-запросом. И я сделал авторизацию отлично. Теперь у меня есть пользователи access_token.
Теперь мой вопрос заключается в том, как создать этот экземпляр службы вручную только с помощью этого access_token. Если что-нибудь беспокоит вас, не стесняйтесь спрашивать что-либо.
N.B - Я знаю, как создать экземпляр CalendarService:
var service = new CalendarService();
, но как я могу создать этот тип экземпляра с присоединенным к опознавательный признак, который у меня есть.
Вы только пытаетесь получить доступ к своему календарю? или вы разрешаете пользователям получать доступ к каландрам через ваше приложение? – DaImTo
@DaImTo Мне нужно будет получить доступ к их календарю, чтобы я мог отправлять события в свой календарь. Пользователь будет аутентифицировать это разрешение. Я сделал эту часть и с разрешением (календарный объем/объем), у меня есть этот токен доступа. –