带有谷歌驱动API的C#Winform应用程序。自动登录的方法?

带有谷歌驱动API的C#Winform应用程序。自动登录的方法?,c#,google-drive-api,C#,Google Drive Api,我正在用C#创建一个桌面应用程序,作为备份程序。我想做的是允许用户创建备份发生时间的计划。我创建了一个在后台运行的windows服务,该服务将根据此计划运行 现在,我的程序将把用户选择的文件复制到另一个本地用户选择的文件夹中。但是,我想扩展它,允许用户按计划将其文件备份到云中,特别是他们的Google Drive帐户 不过,我不确定这是否可行,也不知道该怎么做。我已经有了将文件上传到驱动器帐户的代码,但是,这需要用户在每次运行我的程序时授予它权限。我的问题是,我怎样才能自动完成这项工作?有没有办

我正在用C#创建一个桌面应用程序,作为备份程序。我想做的是允许用户创建备份发生时间的计划。我创建了一个在后台运行的windows服务,该服务将根据此计划运行

现在,我的程序将把用户选择的文件复制到另一个本地用户选择的文件夹中。但是,我想扩展它,允许用户按计划将其文件备份到云中,特别是他们的Google Drive帐户


不过,我不确定这是否可行,也不知道该怎么做。我已经有了将文件上传到驱动器帐户的代码,但是,这需要用户在每次运行我的程序时授予它权限。我的问题是,我怎样才能自动完成这项工作?有没有办法让用户只输入一次登录凭据,然后允许程序在此后自动访问其驱动器帐户,而不必每次都授予权限

您需要将用户的访问令牌存储在某处,并在备份时使用它请求新的短期访问令牌。从Google Drive API文档:

Google Drive应用程序只接收长寿命刷新令牌 在第一次交换授权码的过程中。这次刷新 令牌用于在短期访问之后请求新的访问令牌 令牌过期,必须将其存储在应用程序的数据库中才能使用 每次用户返回应用程序时都会检索到


如果您使用的是OAuth 2.0,则需要提供相关代码。“是否有一种方法可以让用户输入一次登录凭据,然后允许程序在此后自动访问其驱动器帐户,而不必每次都授予权限?”-当然可以…使用OAuth 2.0您可以共享将文件上载到驱动器帐户的代码吗?我一直在寻找该代码,并解决了您的这个问题。