我正在使用角网页应用的网络应用,需要允许用户在我们的系统中注册帐户时上传图片和PDF文件。我想要实现的是在页面中有一个按钮,一旦点击,用户可以浏览他们需要上传的图像或文件,然后代码将调用api将图像或文件存储在谷歌驱动器中。然后,这些图像或文件将显示在另一个页面中供管理员审阅和批准。
我使用来自Google Cloud的虚拟机来托管系统,我启用了Google云端硬盘的Google云端硬盘控制台,但是我被困在授权部分(我在这里引用了文档:{{ 3}})。我对获取身份验证令牌的位置感到困惑,我从Google Cloud控制台生成了api密钥,但我在Google云端控制台中看不到任何有关身份验证令牌的信息。
我不希望让用户在需要上传内容时登录他们的Google帐户,使用google驱动应该对用户透明。上传到Google云端硬盘的所有图片和文件都应该是公开的,并且对所有人开放以进行只读访问和部分写入访问(仅允许添加新文件,不能删除或覆盖现有文件)。
答案 0 :(得分:1)
由于您不希望用户登录其Google帐户,因此剩下的选项是在您的应用中使用service accounts。
答案 1 :(得分:0)
我并不熟悉Google云端硬盘,但是,您可以在此文档页面中找到有关Authorizing Google Drive requests with OAuth 2.0的一些信息。
在任何情况下,考虑到您在问题中解释的用例,并且据我所知您刚刚开始开发,我建议使用Cloud Storage(Google云端平台的产品)就像您用来托管应用程序的Compute Engine实例一样,而不是Google Drive。
Google Drive的主要目标是为最终用户提供文件存储,而Google云端存储主要关注的是应用开发者和后端系统存储。将云端存储通过Google云端硬盘作为应用程序存储系统的一些主要优势是:
最后,回到授权主题,您可以查看this other documentation page。此外,关于存储在云存储中的对象的访问控制,您可以查看how to manage access control。
我知道这个答案并没有完全提供您在Google Drive API中授权请求所需的解决方案,但我认为对于您的用例,云存储更适合,因此值得一看。< / p>