【问题标题】:Google Drive api .Net Client Simple Authorization with existing access token具有现有访问令牌的 Google Drive api .Net 客户端简单授权
【发布时间】:2018-09-06 21:03:35
【问题描述】:

有什么方法可以使用具有现有有效访问令牌的 .Net Api 客户端。 我想使用带有现有访问令牌的 google drive api v3 客户端,但我找不到填充 UserCredential 对象的方法。在这种情况下,我无法使用 .Net 客户端,因此必须使用 httpClient 运行所有操作。

【问题讨论】:

  • 这与您面临的问题相同吗? github.com/google/google-api-dotnet-client/issues/761。那里有一些解决方法代码。不过,您可能可以直接实现初始化程序,只是为了插入令牌作为一种更简单的方法。
  • 是的,同样的问题,我正在尝试解决方法代码。谢谢

标签: c# asp.net-mvc google-drive-api


【解决方案1】:

我遇到过类似的问题,但很快就发现了。 您可以使用类似于以下代码的代码,但根据您的要求稍作修改。

        var flow = new GoogleAuthorizationCodeFlow(new GoogleAuthorizationCodeFlow.Initializer
        {
            ClientSecrets = new ClientSecrets
            {
                ClientId = "your_client_id",
                ClientSecret = "your_client_secret_if_necessary"
            },
            Scopes = new [] { "scope_you_wish_to_access"}
        });

        var credential = new UserCredential(flow, "user_id", new TokenResponse
        {
            AccessToken = "user_access_token",
            RefreshToken = "user_refresh_token_if_necessary"
            // additional parameters if necessary
        });

        var service = new Any_Google_Service(new BaseClientService.Initializer
        {
            HttpClientInitializer = credential
        });

Google lib 会自动在后台做很多事情,例如刷新过期的访问令牌。希望对你有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-11
    • 1970-01-01
    • 1970-01-01
    • 2015-05-01
    • 2017-10-10
    • 2018-12-01
    相关资源
    最近更新 更多