谷歌.api客户端c#锐利认证使用刷新令牌
本文关键字:刷新 令牌 认证 api 客户端 谷歌 | 更新日期: 2023-09-27 17:49:40
我正在使用新的测试版Google api Client Library for . net来加载多个用户的任务列表。它被归类为拥有多个授权用户帐户的"已安装应用程序"(根据google dev. console)。验证一个用户(使用google.api)真的很简单,但我不知道如何使用刷新令牌做同样的事情,以及如何使用这个令牌来获取服务对象。
示例代码:
var credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(GoogleTools.GenerateStreamFromString(GoogleTools.Cred)).Secrets,
new[] { TasksService.Scope.Tasks },
"user", CancellationToken.None, new FileDataStore("Tasks.Auth.Store")).Result;
// Create the service.
service = new TasksService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "Tasks API Sample",
});
我想用刷新令牌构造对象credential
,但是我真的迷路了,找不到任何合适的文档。
您可以使用下面的代码检查当前令牌是否过期并刷新:
if (credential.Token.IsExpired(Google.Apis.Util.SystemClock.Default))
{
var refreshResult = credential.RefreshTokenAsync(CancellationToken.None).Result;
}
之后刷新credential.Token.AccessToken
和credential.Token.RefreshToken
我已经回答了下面的线程:.NET Google api 1.7 beta版使用刷新令牌进行身份验证
希望对你也有帮助。