現時点では、有効期限が切れたときにアクセス コードが自動的に更新されません。この投稿 ( .NET で Google ドライブ SDK を介してリフレッシュ トークンを使用してアクセス トークンを生成する方法) のコードを自分のコード内に実装する方法に途方に暮れています。
私のコード:
private static IAuthorizationState GetAuthorization(NativeApplicationClient arg)
{
// Get the auth URL:
IAuthorizationState state = new AuthorizationState(new[] { "https://www.googleapis.com/auth/yt-analytics.readonly" });
state.Callback = new Uri(NativeApplicationClient.OutOfBandCallbackUrl);
Uri authUri = arg.RequestUserAuthorization(state);
// Request authorization from the user (by opening a browser window):
Process.Start(authUri.ToString());
Console.Write(" Authorization Code: ");
string authCode = Console.ReadLine();
Console.WriteLine();
// Retrieve the access token by using the authorization code:
return arg.ProcessUserAuthorization(authCode, state);
}
具体的には、この行がわかりません。リフレッシュ トークンを保存して state.RefreshToken に挿入するにはどうすればよいですか? 状態を返す直前に、これらの 2 行 (state.RefreshToken と arg.RefreshToken(state)) を詰め込む必要があると思いますか?
state.RefreshToken = "<refresh token previously saved>";