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

时间:2014-05-28 05:24:20

标签: javascript google-drive-api

我是google api的新手。我可以从应用程序脚本执行此文件上载,并且通过该脚本上载的任何文件仅存储到我的驱动器中。 但是如何使用javascript来做到这一点。 谷歌示例:https://developers.google.com/drive/web/quickstart/quickstart-js 显示了如何执行此操作,但文件上传到授权该应用程序的同一用户的驱动器。如何将其限制在我的驱动器中。 感谢

1 个答案:

答案 0 :(得分:5)

简单的回答是你无法使用JavaScript。原因是JavaScript与OAuth2一起使用,这要求您要求用户访问您的数据。

如果你想让它访问你的驱动器帐户,你必须在某个地方保存refreshtoken,然后在加载脚本时发送它。 JavaScript是客户端支持的,因此任何检查页面上代码的人都可以获得他们需要的所有信息,以便他们使用您的驱动器帐户执行任何操作。安全明智,这是一个坏主意。

我建议您研究使用像PHP这样的服务器端脚本语言。您可能需要考虑service account。注意:所有内容都归服务帐户所有,因此您必须向服务帐户授予对Google云端硬盘文件的访问权限,否则您需要将驱动器文件移至服务帐户。

如果您不希望服务帐户拥有可以使用普通Oauth2保存刷新令牌的文件,然后将其存储在服务器端代码中,那么就不会有那么大的安全风险。