img src = webContentLink中的Google云端硬盘图片?

时间:2017-03-17 12:23:02

标签: google-drive-api

我可以使用html <img src="<webContentLink>" />在网站中使用存储在Google云端硬盘中的图片吗?

文件上传后返回<webContentLink>的格式为&#39; https://drive.google.com/uc?id= <FILEID>&amp; export = download&#39;

我有一个仅为帐户用户创建的小型网站。他们可以将文件上传到他们的google驱动器文件夹,此文件夹的权限设置为与其他用户的帐户共享(仅限特定人员)。这是一个使用Google API Client Library for .NET的ASP.NET MVC 5网站。

在Chrome和Firefox中,图片显示正常,在IE和Safari中,他们不会显示并返回302状态代码。有时,如果您直接在新选项卡中查看图像,然后刷新它显示的网页。它还可能会显示文件夹权限是否设置为&#39;任何人都有链接&#39;但这不是理想的。

文档(https://developers.google.com/drive/v3/web/manage-downloads)说,&#39;如果您想允许用户直接在网络浏览器中而不是通过API查看文件,请使用webContentLink。&#39;我明白这可以使用img src =&#39;&#39;在没有API的情况下直接显示图片,然后继续说,&#39;您可以将用户重定向到此网址,也可以将其作为可点击的链接提供。

Google也可以确认是否有&#39; webContentLink&#39;可以在img src =&#39;&#39;中使用,为什么它可以在某些浏览器中运行而不在其他浏览器中运行?我已经阅读了很多这方面的帖子,有些是旧的,有些是近期的。如果不在img src中使用它,我认为应该在文档中明确说明。

非常感谢

3 个答案:

答案 0 :(得分:5)

是的,您绝对可以在HTML页面中使用webContentLink作为您的img src。我试过,这是我在示例HTML页面上得到的。

  <img src = "https://drive.google.com/uc?id=0Bzgk4zncCwI7aDZCSHY4YU0zNUF&export=download">

enter image description here

webContentLink可以使用Files.list获取并放置文件&#39;在fields参数中。

答案 1 :(得分:2)

从Google云端硬盘显示图片可以分3个步骤完成:

检索您的图片ID

右键单击您的图像,然后选择共享。 您将看到需要复制的链接。您将从网址中提取图片的ID。

以下是您的分享链接:

https://drive.google.com/open?id=YourFileId

检查共享设置

只有有权访问这些文件的人才能看到您的图片。要允许任何人访问您的图片,您需要将共享设置设置为通过链接显示

显示图像

正确配置共享设置以及图像文件ID 后,您现在可以指定使用指定格式显示图像的方式。

https://drive.google.com/thumbnail?id=YourFileID

可以找到更多详细信息here

答案 2 :(得分:-1)

当我这样做时,我只会得到一个不存在的图像的迹象。 为什么? 我只是复制粘贴此行:

<img src = "https://drive.google.com/uc?id=0Bzgk4zncCwI7aDZCSHY4YU0zNUF&export=download">

JS Fiddle