C# 我可以使用客户端ID&;上传Google Drive中的任何文件吗;客户端机密,不使用令牌?
我想用客户端ID和客户端密码配置Google Drive API。但不想生成刷新令牌 使用令牌,它工作正常。但没有令牌,我正在使用下面的代码,但每次它都会要求我弹出,出现身份验证失败错误C# 我可以使用客户端ID&;上传Google Drive中的任何文件吗;客户端机密,不使用令牌?,c#,asp.net,google-drive-api,google-oauth,google-api-dotnet-client,C#,Asp.net,Google Drive Api,Google Oauth,Google Api Dotnet Client,我想用客户端ID和客户端密码配置Google Drive API。但不想生成刷新令牌 使用令牌,它工作正常。但没有令牌,我正在使用下面的代码,但每次它都会要求我弹出,出现身份验证失败错误 UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync( new ClientSecrets {
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,
});
请帮我做这个 来自:
如果用户同意,Google会给你的应用程序一个短期访问令牌
应用程序请求用户数据,并将访问令牌附加到请求
如果Google确定您的请求和令牌有效,它将返回请求的数据
一些流包括附加步骤,例如使用刷新令牌获取新的访问令牌。有关各种类型应用程序的流的详细信息,请参阅Google的
因此,如果您仅拥有用户的凭据,则无法将文件上载到Google Drive。您需要一个令牌。来自:
如果用户同意,Google会给你的应用程序一个短期访问令牌
应用程序请求用户数据,并将访问令牌附加到请求
如果Google确定您的请求和令牌有效,它将返回请求的数据
一些流包括附加步骤,例如使用刷新令牌获取新的访问令牌。有关各种类型应用程序的流的详细信息,请参阅Google的
因此,如果您仅拥有用户的凭据,则无法将文件上载到Google Drive。您需要一个令牌。库将自动为您创建一个刷新令牌,并将其与“用户”参数关联存储。如果没有刷新令牌,它将再次请求您执行任务。没有访问令牌,您无法上传到Google。你能解释一下你想做什么吗?我想你可能对Google Oauth和它的工作方式有点困惑。顺便说一句,Google WebAutorizationBroker适用于已安装的应用程序。如果你试图将其作为asp.net应用程序托管,它将不起作用。你需要使用Google AuthorizationCodeFlow。该库将自动创建一个刷新标记,并将其与“用户”参数关联存储。如果没有刷新令牌,它将再次请求您执行任务。没有访问令牌,您无法上传到Google。你能解释一下你想做什么吗?我想你可能对Google Oauth和它的工作方式有点困惑。顺便说一句,Google WebAutorizationBroker适用于已安装的应用程序。如果你试图将它作为asp.net应用程序托管,它将无法工作。你需要使用Google AuthorizationCodeflow。