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


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

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

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

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

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


在谷歌驱动器API中有一个文件类型选项。你可以检查它是否被解析成一个有效的图像。我会看一个选项,如果文件类型给我一个无效的图像,然后为文件获取一个新的直接URL。我还没有弄清楚如何做到这一点,但也许这是一个尝试的途径。


一个解决方法是使用谷歌Drive SDK API获取fileId,然后使用这个Url:

https://drive.google.com/uc?export=view&id= {id}

这将是一个永久链接到您的文件在谷歌驱动器(图像或其他任何东西)。

注:此链接似乎受配额限制。所以不适合公开/大规模共享。


Vetea,如果你从图片URL中获取链接,它不工作,但如果你从“直接链接”字段中获取它,它应该工作。我在多个场合使用并测试过它。


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

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

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

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


如果你想在浏览器中查看文件,也可以使用类似于rufo和Torxed提供的方法:

https://drive.google.com/uc?export=view&id={fileId}

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

在2013年4月,使用Chrome/webkit,以下对我来说是有效的:

1 .创建一个文件夹,名为。“公共” 2选中该文件夹,右键单击,选择“共享>共享”。点击。选择“任何人都可以访问” 3将文件拖放到文件夹中,并上传。 4右键单击文件,选择“详细信息”。Details-Fieldset中的一行读作“Hosting”。下面是一个url:

https://googledrive.com/..。

拖放该url到一个新的选项卡。复制并粘贴url并共享或嵌入到任何你喜欢的地方。

一个限制是,就HTTP而言,似乎只有安全的HTTP访问是可能的。

更新: 另一个限制是,谷歌驱动器可以打开的文件,将无法以这种方式访问。 也就是说,点击“详细信息”不会显示谷歌驱动器的url。

要克服这个问题:

右键点击有问题的文件,选择“打开>管理应用程序”:

在这里取消文件相关的应用程序 可选:Reload谷歌Drive 右键点击文件,选择“Details” 继续执行步骤#4

注意:上述过程的另一种选择是上传谷歌驱动器无法打开/未关联的扩展名的文件。


你可以直接从Drive & Gmail来做。方法如下:

1.上传图片到谷歌驱动器并设置查看权限(可以是公共或任何人w/ link)

去Gmail>撰写。选择附件图标旁边的+。 选择驱动器图标(三角形) 导航到您的图像和右键复制图像url 粘贴到网页浏览器或嵌入网页根据需要。


去你的谷歌车道。 右键单击映像文件。 选择Get link。 打开“常规访问”下拉菜单。 选择任何人与链接发布您的图像。 单击复制链接>完成。

你会得到一个像下面这样的URL: https://drive.google.com/file/d/1wMgCWAsqlw0nXcMhCldTbwSznMdXUmBT/view?usp=share_link 您可以看到粗体显示的文件ID。将文件ID放在下面的简单视图链接中: https://drive.google.com/uc?id=FILE ID 结果: https://drive.google.com/uc?id=1wMgCWAsqlw0nXcMhCldTbwSznMdXUmBT

你可以对其他类型的文件采取同样的步骤:MP3, PDF等。


对于图像,在谷歌查看器中打开图像。即。

方法1

https://docs.google.com/file/d/0Bz7qe_olclTwWDNJRDRmb1pJamM/edit

然后查看源>找到单词“texmex-thumb”,旁边会有链接。


以前的一些用户很接近,但他们在这里或那里遗漏了一个步骤。

这里有一个视频展示了所有的步骤。

当涉及到新的谷歌驱动器时,以下信息是不正确的。对于新谷歌驱动器,请遵循以下说明。 你有两种选择, 选项1,你可以点击右上角的齿轮,恢复到旧的谷歌驱动器,如果你恢复,使用“结束编辑”后的说明) . 选择二,或者你可以跟着我找到的工作。如果我找到比这更好的方法,我会更新它,但以下是我发现的有效方法。

The full link will look like this "https://googledrive.com/host/(folder id) Part one of your link that you need is "https://googledrive.com/host/" for the second half you will need to navigate to the file you would like to share. Once you are in the folder with the file you would like to share, look at the link above (Example 1 https://drive.google.com/drive/u/0/#folders/0B3UALYkiLexYSXZlcldoU2NpYXM ) (Example 2 https://drive.google.com/drive/u/0/#folders/0B3UALYkiLexYSXZlcldoU2NpYXM/0B3UALYkiLexYRkNnOVhsUVozRU0) In both of these above examples, the "Folder ID" you need for sharing is the last group of letters and numbers after the "/" so in example one, it is "0B3UALYkiLexYSXZlcldoU2NpYXM" in example two it is "0B3UALYkiLexYRkNnOVhsUVozRU0" In the examples I used, example 1 was a folder on my drive, and example 2 was a folder inside that first one, that is why it has the entire first link before the second. We only need the section after the "/" furthest to the right.

现在你有了你的“文件夹ID”,使用上面的公式“https://googledrive.com/host/(folder ID)” 例1 https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM 例2 https://googledrive.com/host/0B3UALYkiLexYRkNnOVhsUVozRU0

很好,现在您有了这个链接,在一个新页面中打开它。它将引导您到共享文件夹。一旦在那里,你可以右键单击任何文件,选择“复制链接地址”,或者你可以单击该文件夹中的任何文件,它会带你到托管图像,页面顶部的URL是托管URL。

你就该这么做。这很烦人,就我个人而言,恢复到旧的谷歌驱动器似乎容易得多。

我会尽快制作新的教程视频

如果这对你不起作用,请告诉我你遇到了什么问题。

结束编辑)

https://www.youtube.com/watch?v=QmN22LMPdDk&feature=youtu.be

或者你可以按照下面的书面说明来做。

这些图片和步骤中列出的图片是一致的。

https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM/

Create a Folder on your Google Drive that you would like to use for sharing images. Select that folder and go to the sharing options. Change the "Who has access" options from "Specific People" to "Public on the web" All images placed in folder will have a hosting link on them shown in Step 4 (Images : Change Folder Option.png, Change folder option 2.png, and Change folder option 3.png) place an image in that folder. select the image you would like to share and look at the details section (usually on right hand side) for a section labeled "Hosting" you should find a link that starts with "googledrive.com/host/(random numbers and digits that are the ID for that folder)/(file name)" Use that link to share your images. You can use that link to embed them into other websites. (Images: Change folder option 4.png and Change folder option share.png)


牛科技提供的解决方案对我很有效。

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

但有两个突出的问题

您不能在驱动器中的同一文件夹中有两个具有相同名称的文件,否则此链接将不起作用。 目前还不清楚,但谷歌似乎计划通过驱动器弃用图像托管。请看下面的链接。 https://support.google.com/richmedia/answer/6098968?hl=en


从谷歌驱动器帮助页面:

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.


以下是来自@ https://productforums.google.com/forum/#!主题/传动/ yU_yF9SI_z0 /讨论

1-上传你的图片

2-右击并选择“获取共享链接”

3-复制链接应该看起来像

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

4-换开场?加州大学吗?然后像这样使用它

<img src="https://drive.google.com/uc?id=xxxxx">

然而,这个答案很简单,事实上非常简单,是的,许多人都提到了它,简单地把图像的id放在下面的链接https://drive.google.com/uc?export=view&id={fileId}

但不管这有多简单,我还是编写了一个脚本在控制台中运行。 从谷歌驱动器中输入一个完整的可共享链接数组,并将它们转换为上述链接。然后它们可以简单地用作静态地址。

array = ['https://drive.google.com/open?id=0B8kNn6zsgGEtUE5FaGNtcEthNWc','https://drive.google.com/open?id=0B8kNn6zsgGEtM2traVppYkhsV2s','https://drive.google.com/open?id=0B8kNn6zsgGEtNHgzT2x0MThJUlE'] function separateDriveImageId(arr) { for (n=0;n<arr.length;n++){ str = arr[n] for(i=0;i<str.length;i++){ if( str.charAt(i)== '=' ){ var num = i+1; var extrctdStrng = str.substr(num) } } console.log('https://drive.google.com/uc?export=view&id='+extrctdStrng) window.open('https://drive.google.com/uc?export=view&id='+extrctdStrng,'_blank') } } separateDriveImageId(array)


1.将您的图片设置更改为公共。

2.获取其可共享链接。

3.去这个网站并生成一个直接下载链接。

为我工作!


特别针对G-Suite用户 . 如第3点所述,您可以使用此URL托管映像

https://drive.google.com/a/domain.com/thumbnail?id=imageID

有以下替换

域名:替换为贵公司的GSuite域名,如皮卡丘 imageID:替换为镜像id /文件id


这里的先决条件是,图像应该通过驱动器共享给目标受众(无论是单独的每个人还是整个组织)


如果你遇到渲染图像大小的问题,请使用下面提到的选项

https://drive.google.com/a/domain.com/thumbnail?id=imageID&sz=w{width}-h{height}

使用以下替换(除了domain和imageID替换)

{width}:以像素为单位写宽度(不带大括号),如300 {height}:以像素为单位(不带大括号)写高度,例如200


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

简单的解决方案

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

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


重定向的目的是什么?

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


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


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


功能名称:goobox

标签:图像托管,regex, URL,谷歌驱动器,dropbox,高级

return: string, Returns a string URL that can be used directly as the source of an image. when you host an image on google drive or dropbox you can't use the direct URL of your file to be an image source. you need to make changes to this URL to use it directly as an image source. goobox() will take the URL of your image file, and change it to be used directly as an image source. Important: you need to check your files' permissions first, and whether it's public. live example: https://ybmex.csb.app/

cconst goobox = (url)=>{

    let dropbox_regex = /(http(s)*:\/\/)*(www\.)*(dropbox.com)/;
    let drive_regex =/(http(s)*:\/\/)*(www\.)*(drive.google.com\/file\/d\/)/;

    if(url.match(dropbox_regex)){
       return url.replace(/(http(s)*:\/\/)*(www\.)*/, "https://dl.");
    }
    if(url.match(drive_regex)){
        return `https://drive.google.com/uc?id=${url.replace(drive_regex, "").match(/[\w]*\//)[0].replace(/\//,"")}`;
    }
    return console.error('Wrong URL, not a vlid drobox or google drive url');
}
let url = 'https://drive.google.com/file/d/1PiCWHIwyQWrn4YxatPZDkB8EfegRIkIV/view' 

goobox(URL); //  https://drive.google.com/uc?id=1PiCWHIwyQWrn4YxatPZDkB8EfegRIkIV 

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

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

在这里测试

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

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


我发现了一个非常有用的api/url:

imageId ->文件ID Width,期望的宽度(不能大于图像分辨率宽度),必须为整数才能工作 高度,期望的高度(不能大于图像分辨率高度),必须为整数才能工作

https://drive.google.com/thumbnail?id=${imageId}&sz=w${width}-h${height}

注意:api/url将保持纵横比,因此它将在第一个维度停止


您可以按照以下步骤将您想要的文件嵌入到您的网站。

在谷歌驱动器中找到PDF文件 在谷歌驱动器中预览PDF文件 弹出谷歌驱动器预览 使用“更多操作”菜单并选择“嵌入项” 提供副本代码 编辑谷歌网站页面,你想嵌入 打开HTML编辑器 粘贴谷歌驱动器预览提供的HTML嵌入代码 使用更新按钮并保存页面

引用:https://www.steegle.com/websites/google-sites-howtos/embed-drive-pdf


这是唯一的直接链接格式没有重定向(然后一个永久链接),只适用于文件直接可见的谷歌驱动器(例如图像和文档)。 它不受下载限制的影响,您可以使用它在网站上显示图像。

例如共享链接:

https://drive.google.com/file/d/FILE_ID/view?usp=sharing

就变成:

https://lh3.googleusercontent.com/d/FILE_ID

Lh4, lh5和lh6也有作用。


2022年11月面向工作空间(G套件)用户的工作解决方案

一些嵌入代码不显示img,除非查看者登录到gmail,下面的工作就像你的网络主机上的常规图像:

公开分享项目(确保它说“互联网上任何有此链接的人都可以查看):要么图片本身(或图片所在的文件夹),然后按以下方式复制链接

获取文件的ID并在这里插入:

<img src="https://lh3.googleusercontent.com/d/[ID_OF_THE_FILE]">

结果(如果你看到下面的狗,这意味着解决方案仍然有效):

Localmachine

不会显示在MAMP/WAMP类型的本地主机环境,但显示在网页上。