我可以使用客户端ID和客户端密钥在不使用令牌的情况下在Google云端硬盘中上传任何文件吗?

问题描述 投票:1回答:1

我想使用客户端ID和客户端密钥配置Google Drive API。但不想生成刷新令牌。

使用令牌,它工作正常。但是没有令牌,我正在使用以下代码,但是每次都要求我弹出带有身份验证失败错误的消息。

            UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                       new ClientSecrets
                       {
                           ClientId = ClientId,
                           ClientSecret = ClientSecret,
                       },
                       new[] { DriveService.Scope.Drive },
                       "user", CancellationToken.None).Result;


            var service = new DriveService(new BaseClientService.Initializer()
            {
                HttpClientInitializer = credential,
                ApplicationName = ApplicationName,
            });

请为此帮助我。

c# asp.net google-drive-api google-oauth google-api-dotnet-client
1个回答
0
投票

来自developers.google.com

如果用户批准,则Google会为您的应用提供一个短暂的访问令牌。

您的应用程序请求用户数据,将访问令牌附加到请求。

如果Google确定您的请求和令牌有效,它将返回所请求的数据。

某些流程包括其他步骤,例如使用刷新令牌来获取新的访问令牌。有关各种类型的应用程序流程的详细信息,请参阅Google的OAuth 2.0 documentation

因此,如果您仅拥有用户的凭据,则无法将文件上传到Google云端硬盘。您需要令牌。

© www.soinside.com 2019 - 2024. All rights reserved.