我是 google api 的新手。我可以从应用程序脚本上传此文件,并且通过该脚本上传的任何文件仅存储到我的驱动器中。 但是如何使用 javascript 来做到这一点。 谷歌示例:https://developers.google.com/drive/web/quickstart/quickstart-js 展示了如何执行此操作,但文件会上传到授权该应用程序的同一用户的驱动器。如何将其限制为仅限我的驱动器。 谢谢
最佳答案
简单的答案是你不能使用 JavaScript。原因是 JavaScript 与 OAuth2 配合使用,这要求您请求用户允许访问您的数据。
如果您想让它访问您的驱动器帐户,您必须将刷新 token 保存在某个位置,然后在加载脚本时发送该刷新 token 。 JavaScript 是客户端的,因此任何检查页面上代码的人都将获得他们需要的所有信息,以便使用您的云端硬盘帐户执行他们想要的操作。从安全 Angular 来看,这是一个坏主意。
我建议您考虑使用服务器端脚本语言,例如 PHP。您可能需要考虑 service account 。注意:一切都将归服务帐户所有,因此您必须向服务帐户授予对您的 Google 云端硬盘文件的访问权限,或者您需要将您的云端硬盘文件移至服务帐户。
如果您不希望服务帐户拥有文件,您可以使用普通的 Oauth2 保存刷新 token ,然后将其存储在服务器端代码中,这样就不会有那么多的安全风险。
关于javascript - 使用 javascript 将任何人的文件上传到我的谷歌驱动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23903378/