メンバーのイベントを作成できる Web サイトがあり、Google カレンダー API に接続しようとしているので、新しいイベントを作成するたびに、それをカレンダーに同期できます。
私はこのガイドに従っています: https://developers.google.com/calendar/quickstart/dotnet
しかし、サンプル コードを実行する部分に到達すると、OAuth で認証する必要があります。私は以下を取得します:

私のコード:
public class InitializeGoogleCalendarApiHelper : IInjected
{
public InitializeGoogleCalendarApiHelper(ILogger logger)
{
this.logger = logger;
}
// If modifying these scopes, delete your previously saved credentials
// at ~/.credentials/calendar-dotnet-quickstart.json
static string[] Scopes = { CalendarService.Scope.CalendarReadonly };
static string ApplicationName = "Nordmanni Google Calendar API";
private readonly ILogger logger;
public CalendarService Initialize()
{
UserCredential credential;
using (var stream =
new FileStream("C:/Projects/Nordmanni/Nordmanni.App/credentials.json", FileMode.Open, FileAccess.Read))
{
// The file token.json stores the user's access and refresh tokens, and is created
// automatically when the authorization flow completes for the first time.
string credPath = "C:/Projects/Nordmanni/Nordmanni.App/GoogleApiToken.json";
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
Scopes,
"user",
CancellationToken.None,
new FileDataStore(credPath, true)).Result;
logger.Info<InitializeGoogleCalendarApiHelper>($"Credential file saved to: {credPath}");
}
// Create Google Calendar API service.
var service = new CalendarService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = ApplicationName,
});
return service;
}
}
今のところ、ビジュアルスタジオでウェブサイトをローカルで実行しています。私が行ったリクエストごとにポート番号が変わるため、ポート番号の設定が機能していないようです。
これらは、Googleで設定した設定です。
解決策を探すために最後の 1 日半を費やしましたが、これまでのところ何も見つかりませんでした。
credentials.json をダウンロードし、ソリューションに追加しました。リソースやリンク、または私が見ることができるサンプルコードは大歓迎です。ドメインを正しくセットアップしたかどうか、またはローカルで実行中にセットアップできるかどうかさえわかりません。
