javascript - 使用 javascript 将任何人的文件上传到我的谷歌驱动器

标签 javascript google-drive-api

我是 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/

相关文章:

ios - 无需登录即可访问谷歌驱动器中公开共享的文件夹文件

java - Google Drive API - 通过文件 ID 检查文件是否存在

google-apps-script - Google Doc .makeCopy() 的脚本没有复制评论?

java - 如何以编程方式访问 Google Drive 共享链接?

javascript - 如何使用 queryselector 验证两个输入字段是否已填写?

javascript - jQuery,动态显示表格行

javascript - 如何让 Colorbox 出现在 div 中?

android - Google Drive android API 共享问题

javascript - 在 Javascript 中获取图像变量的高度和宽度

javascript - ShadowRoot 返回为 Null - ShadowRoot 显示为打开