文件公开时,Google云端硬盘webContentLink不支持CORS

时间:2015-08-05 19:31:28

标签: google-api google-drive-api cors

webContentLink应该是指向fileResource所代表文件的直接链接 让我们首先忽略这样一个事实,即链接将始终响应302指向生成的downloadUrl(生命周期非常有限)。

我理解webContentLink指向的资源使用基于cookie的身份验证,而CORS会带来安全风险,但文档明确指出,当有问题的文件是公开的(显然)时,不需要身份验证。
因此,对于文件公开的情况,我不明白为什么不支持CORS。

是否存在与此相关的安全风险,我没有意识到?错误?在使用或不使用Access-Control-Allow-Origin进行响应之前,检查文件的权限是否被视为太多工作。

另外,使用服务器端代理来获取302位置指向的downloadUrl会产生一个支持CORS的资源。

1 个答案:

答案 0 :(得分:-1)

不是问题提出的问题的解决方案,但使用GDrive托管功能,我能够在不使用服务器端代理的情况下解决webContentLink的限制。

https://googledrive.com/host/shared_folder_id/relative_path

该链接将是文件的直接链接,资源支持CORS。但是,这有一个限制,即文件的名称必须在其自己的文件夹中是唯一的,否则它不起作用。