我想知道是否可以在公共网站上访问/显示存储在谷歌驱动器中的图像等文件。


当前回答

编辑:截至2020年,这是有效的。以前的大多数答案都过时了。

简单的解决方案

你所要做的就是打开你的文件:

然后,进入你的网页检查器(Chrome, Cmd-Shift-I或Ctrl-Shift-I取决于你的操作系统),并获得链接。将该链接粘贴到浏览器中,它将重定向到另一个链接。复制新的URL。完成了!


重定向的目的是什么?

似乎如果你使用第一个链接,它只能在登录到你的谷歌帐户时才能访问。对其他人没有多大帮助。然而,第二个重定向链接不需要您登录。这就是它背后的基本原理。


我删除了图像中显示的原始文件,但这里有另一个工作示例。


实际上,我已经检查了大约一周前在我的编辑中发布的示例链接,但它似乎不再工作了。看起来这些链接只是临时工作,所以不要在任何生产环境中使用它们。

其他回答

根据这篇博文,目前可行的解决方案是:

<img src=”https://drive.google.com/uc?id=[imageIdGoesHere]" />

在这里测试

https://drive.google.com/uc?id=1m-uOoFzHn4oUGlEsDSEfPBbJ2QhBJzlM

经验证,该系统将于2021年4月26日生效。无需共享文件夹,无需登录。但是公共共享文件是。

更新:正如所宣布的,谷歌在2016年8月弃用了此功能。这是谷歌的最后一次更新。

是的,这是可能的。如果你把文件放在公用文件夹中,你可以通过这个URL获取文件夹中的任何文件:

https://googledrive.com/host/<folderID>/<filename>

从谷歌驱动器帮助页面:

To host a webpage with Drive: Open Drive at drive.google.com and select a file. Click the Share button at the top of the page. Click Advanced in the bottom right corner of the sharing box. Click Change.... Choose On - Public on the web and click Save. Before closing the sharing box, copy the document ID from the URL in the field below "Link to share". The document ID is a string of uppercase and lowercase letters and numbers between slashes in the URL. Share the URL that looks like "www.googledrive.com/host/[doc id] where [doc id] is replaced by the document ID you copied in step 6. Anyone can now view your webpage.

我认为这是可能的,但只是在短时间内

你要做的就是将文件的访问控制列表设置为公共只读(或公共读/写)。您可以通过编程方式使用谷歌文档列表API,或手动通过驱动器图像查看器上的“共享”按钮来实现这一点。

然后,您可以通过使用谷歌文档列表API或使用谷歌驱动器API(即Java中的file.getDownloadUrl())以编程方式获取图像的URL。您还可以通过在谷歌驱动器默认图像查看器中右键单击图像,轻松地手动获取到图像的链接。

问题是,这个链接存在的时间是有限的,所以它会工作一段时间,然后就停止工作了。

基本上,存储在驱动器中的图像文件的URL应该是可以访问的,而不需要任何身份验证,一旦它被设置为公开共享,但URL将在某个时候改变。我们可能会在未来找到一个解决方案,比如提供一个永久的URL,将重定向到这些不断变化的URL,但没有承诺…

Con可以禁用javascript在您的浏览器中打开图像文件并在查看页面源或右键单击图像,就会看到图像链接。(事先查看股权偏好)