gpt4 book ai didi

C# 为 AuthorizeAsync 设置 access_type = offline?

转载 作者:太空宇宙 更新时间:2023-11-03 14:59:27 25 4
gpt4 key购买 nike

我正在尝试更改我们对 .net 客户端库的旧 rest 调用,我有两个相关的问题/问题......

此页面上的示例应用程序 https://developers.google.com/api-client-library/dotnet/guide/aaa_oauth

使用 AuthorizeAsync 让用户批准授权,然后将凭据保存在某处....

稍后 - 你想做一些离线事情,为此,它有以下内容

UserCredential and AuthorizationCodeFlow take care of automatically "refreshing" the token, which simply means getting a new access token. This is done using a long-lived refresh token, which you receive along with the access token if you use the access_type=offline parameter during the authorization code flow.

我已将有问题的两个语句标记为粗体。

  1. 如何使用 c# 客户端库设置此参数? AuthorizeAsync 不接受 accessType 标志。
  2. 你甚至需要设置这个(AccessType)吗?我注意到在批准 oauth 屏幕后 - 我收到了 accessToken 和 RefreshToken
  3. 获得刷新 token 后 - 您需要从保存的访问 token 和刷新 token 构建凭据 - 您是否需要手动刷新访问 token ?或者 AuthorizationCodeFlow 真的会处理这个问题吗?我需要记住刷新的 accessToken 吗?

最佳答案

using (var stream = new FileStream("client_secrets.json", FileMode.Open, FileAccess.Read))
{
credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
new[] { BooksService.Scope.Books },
"user", CancellationToken.None, new FileDataStore("Books.ListMyLibrary"));
}

上面首先要看的是“用户”,这里表示不同的用户。 FileDataStore 默认将凭据存储在您计算机上的 %appData% 文件夹中,每个用户都有自己的凭据文件。我在 filedatastore 上写了一篇完整的文章.

您无需担心将其设置为离线访问或在您的访问 token 过期时请求新的访问 token ,客户端库将为您处理所有这些。

关于C# 为 AuthorizeAsync 设置 access_type = offline?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46937583/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com