如何在Google云端硬盘中的* public *文件上设置Access-Control-Allowed-Origin

时间:2018-06-27 00:35:13

标签: javascript firebase cors google-drive-api

我构建了一个使用“使用Google登录”流程的浏览器应用,并被授予https://www.googleapis.com/auth/drive.file范围。

从那里,我可以在用户创建的文件夹内的用户Google云端硬盘中创建文件,并将此权限添加到这些文件中(但不添加该文件夹的权限):{角色:“阅读器”,键入:“任何人” }。

我希望另一个用户能够从我的应用程序内访问文件。该文件应该是“公开的”文件,任何人都可以阅读。

我遇到两个问题:

  • 如果我使用“ webContentLink”在Javascript代码中获取()资源,则会因违反CORS而被阻止
  • 如果我只是通过一个简单的REST GET通过具有我的auth令牌的/ drive / v3 / files / $ {id}?alt = media获取资源,则会出现2种行为:如果我使用的创建者的凭据进行操作文件,文件下载没有问题,但是如果使用其他用户的凭据进行下载,则会得到“ 403权限不足”。

我如何让一个用户通过他/她的Google云端硬盘与另一个用户共享文件?

我已经习惯了Firebase,在那里,他们的存储组件允许我上传cors.json文件,我可以将其配置为允许我的原点(或任何带*的原点),但Google云端硬盘似乎不提供此功能。

我知道有解决方法(使用cors代理,或仅使用Firebase进行存储),但是我对涉及将数据从Google云端硬盘获取到浏览器的解决方案感兴趣。

0 个答案:

没有答案