对于我的应用程序,我希望用户能够在Google云端硬盘上存储文件,并且我的服务可以访问使用该应用程序创建的这些相同文件。
我为Web应用程序创建了一个客户端ID,并且能够使用drive.appfolder范围从JavaScript(客户端)上传/列出/下载文件。这很好,这是我想做的一半。
现在我想从Node.js(服务器端)访问相同的文件。我迷失了如何做到这一点。我是否为服务器创建新的客户端ID? (如果是这样,用户将如何进行身份验证?)我是否通过AuthToken我的用户有客户端并尝试在服务器上使用它?我认为这不会起作用,因为AuthToke是时间敏感的(并且可能不打算从多个IP中使用)。
任何方向或示例服务器端代码都会有所帮助。同样,我想要的只是访问用户使用我的应用程序创建的相同文件,而不是用户的Google云端硬盘中的任何其他文件。
澄清:我认为我的问题归结为:“是否可以在客户端和服务器端访问Google Drive上的相同应用程序数据?”
答案 0 :(得分:0)
我是否为服务器创建新的客户端ID?
由你决定。你不需要,但你可以。见下文。
如果是,用户将如何进行身份验证?
由你决定。 OAuth是关于授权,而不是身份验证。 如果您的意思是授权,则用户授权项目,该项目可能包含多个客户端ID。
我是否通过了AuthToken,我的用户有客户端,并尝试在服务器上使用它?
你可以做,但不是因为你陈述的原因。首选方法是拥有一个单独的服务器客户端ID,并使用它来请求脱机访问,该访问返回(最终)刷新令牌,您将存储在服务器中。然后,您可以使用该刷新令牌在需要时请求访问令牌。
AuthToken是......(可能不打算从多个IP中使用)。
不绑定到特定的IP地址
是否可以在客户端和服务器端访问Google云端硬盘上的相同应用数据?“
是
您需要的大部分内容都在https://developers.google.com/accounts/docs/OAuth2WebServer