我想知道是否有可能在一个公共网站上访问/显示存储在Google Drive中的图片等文件。
一个变通方法是通过 "Google Drive SDK API "获得 "fileId",然后使用这个 "Url"。
https://drive.google.com/uc?export=view&id={fileId}
这将是你在Google Drive中的文件(图片或其他东西)的永久链接。
注意:这个链接似乎受到配额的限制。所以不适合公开/大规模分享。
更新。 正如[宣布][1],谷歌在2016年8月废止了这一功能。 这里'是[谷歌的最终更新][2],有替代方案。
是的,它'是可能的。 只要你把文件放在一个公共文件夹里,你就可以通过这个URL获取文件夹里的任何文件。
https://googledrive.com/host/<folderID>/<filename>
[1]: https://gsuiteupdates.googleblog.com/2015/08/deprecating-web-hosting-support-in.html [2]: http://gsuite-developers.googleblog.com/2016/07/reminder-turn-down-of-google-drive-web.html
这里'是简单的查看链接。
https://docs.google.com/uc?id=FILE-ID
例如 https://docs.google.com/uc?id=0B9o1MNFt5ld1N3k1cm9tVnZxQjg
这里是如何从@ https://productforums.google.com/forum/#!topic/drive/yU_yF9SI_z0/discussion。
1-上传你的图片
2-右击并选择"获取可分享链接"。
3- 复制链接,它应该看起来像
4-将 "open? "改为 "uc?",并像这样使用。
<img src="https://drive.google.com/uc?id=xxxxx">
更新。 正如[宣布][1],谷歌在2016年8月废止了这一功能。 这里'是[谷歌的最终更新][2]与替代方案。
按照2013年4月,使用Chrome/webkit,以下对我来说是可行的。
"public".的文件夹。
共享*。 点击。 选择"任何人都可以访问"。
细节-字段组中的一行写着"主机"。 下面是一个网址。
https://googledrive.com/...
一个限制是,就HTTP而言,只有安全的HTTP访问似乎是可能的。
更新: 另一个限制是,谷歌驱动可以打开的文件,将无法访问这种方式。 也就是说,点击"细节"。 不会显示谷歌驱动器的网址。
要克服这个问题。
![在此输入图片描述][3] 。
注:上述程序的替代方法是上传Google Drive无法打开/没有关联的扩展名的文件。
[1]: https://gsuiteupdates.googleblog.com/2015/08/deprecating-web-hosting-support-in.html?visit_id=1-636231887271567776-2345662051&hl=en [2]: http://gsuite-developers.googleblog.com/2016/07/reminder-turn-down-of-google-drive-web.html [3]: http://i.stack.imgur.com/SXib9.png
我认为这是有可能的,但只是在短时间内。
你必须做的是将文件的访问控制列表设置为公共只读(或公共读/写)。你可以使用Google Document List API以编程方式做到这一点,或者通过Drive图像浏览器上的"Share"按钮手动做到这一点。
然后,你可以通过使用谷歌文档列表API或使用Google Drive API(即Java中的file.getDownloadUrl())以编程方式获得图片的URL。你也可以通过在Google Drive默认的图像查看器中右击图像,轻松地手动获得图像的链接。
问题是,这个链接的存活时间有限,所以它会工作一段时间,然后停止工作。
基本上,存储在Drive中的图像文件的URL一旦被设置为公开共享,就应该无需任何认证即可访问,但这个URL会在某个时候发生变化。我们可能会在未来找到一个解决方案,比如提供一个永久的URL,将重定向到这些变化的URL,但不保证......
来自【google drive帮助页面】1。
要用Drive托管一个网页。 要用Drive托管一个网页: > 要用Drive托管一个网页: > 要用Drive托管一个网页: > 要用Drive托管一个网页: > &gt; &gt;
- 在drive.google.com打开Drive并选择一个文件。
1.打开Drive.google.com,选择一个文件。
点击页面顶部的共享按钮。 3;
单击共享框右下角的 "高级"。 4.单击 "更改..."。 5;
选择On - Public on the web,然后点击Save。 5.选择网络上的 "开"--公开,点击 "保存"。
在关闭共享框之前,从下面的"链接到共享"字段中的URL中复制文档ID。 文档ID是一串
中的斜线之间的大写和小写字母和数字。 URL. URL; 7. 分享看起来像"www.googledrive.com/host/[doc id]的URL,其中[doc id]被你在步骤6中复制的文档ID所取代。 8.分享看起来像"[doc id]的URL,其中[doc id]由你在步骤6中复制的文档ID代替。 8.分享看起来像"[doc id]的URL,其中[doc id]由你在步骤6中复制的文档ID代替。
。 现在任何人都可以查看你的网页。
1:
前面的一些用户已经很接近了,但他们在这里或那里缺少一个步骤。
这里有一个视频,显示了所有的步骤。
(Edit 2-Dec-14
The Below information is incorrect when it comes to the new Google Drive.
对于新的谷歌驱动器按照这些说明。
有两个选项你可以使用。
选项1,你可以点击右上角的齿轮,并恢复到旧的谷歌驱动器,如果你恢复,使用后的指示"结束编辑)"。
.
方案2或者你可以按照我找到的工作方法。
如果我找到比这更好的方法,我会更新它,但这是我发现的工作方法。
完整的链接将看起来像这样"https://googledrive.com/host/(文件夹id)
你需要的链接的第一部分是"https://googledrive.com/host/"。
对于后半部分,你需要导航到你想分享的文件。
一旦你进入了你想分享的文件的文件夹,看看上面的链接。
(例1 https://drive.google.com/drive/u/0/#folders/0B3UALYkiLexYSXZlcldoU2NpYXM )
(例2 https://drive.google.com/drive/u/0/#folders/0B3UALYkiLexYSXZlcldoU2NpYXM/0B3UALYkiLexYRkNnOVhsUVozRU0)
在上面这两个例子中,你需要分享的"文件夹ID".后面的最后一组字母和数字是"/"。
你需要分享的是"/"后面的最后一组字母和数字。
所以在例子一中,它是"0B3UALYkiLexYSXZlcldoU2NpYXM"。
在例子二中,它是"0B3UALYkiLexYRkNnOVhsUVozRU0"。
在我用的例子中,例子一是我硬盘上的一个文件夹,例子二是第一个文件夹里面的一个文件夹,这就是为什么它有整个第一个链接在第二个链接之前。
我们只需要"/".后面的部分。
最右边的部分。
所以现在你已经有了你的"文件夹ID",利用上面的公式"https://googledrive.com/host/(文件夹ID)"。
例1 https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM
例2 https://googledrive.com/host/0B3UALYkiLexYRkNnOVhsUVozRU0
很好,现在你有了这个链接,在一个新的页面中打开它。
它将引导你到共享文件夹。
一旦到了那里,你可以在任何文件上右击并选择"复制链接地址"。
或者你可以点击该文件夹中的任何文件,它将带你到托管的图片,页面顶部的URL是托管的URL。
就是这样做的。
这是很烦人的,个人觉得恢复到以前的google drive就好象轻松多了。
我会尽快尝试做一个新的教程视频的
如果这对你不起作用,请告诉我你遇到了什么问题。
结束编辑)
或者你可以直接按照下面写的来做。
这些图片与步骤中列出的图片搭配。
https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM/
在Google Drive上创建一个你想用来分享图片的文件夹。
2.选择该文件夹,并进入共享选项。 将"谁有访问权" 选项从"特定人员" 改为"网络上的公众"。 所有放置在文件夹中的图片将有一个托管链接,如步骤4所示。
(图片 : [更改文件夹选项.png][1]、[更改文件夹选项2.png][2]和[更改文件夹选项3.png][3])
在该文件夹中放置一张图片。
选择你想分享的图片,然后看一下详情部分(通常在右侧)标有"主机"的部分。 你应该找到一个链接,开始与
"googledrive.com/host/(随机数字和数字,是该文件夹的ID)/(文件名)"。
使用该链接来分享你的图片。 你可以使用该链接将它们嵌入到其他网站。
(图片。 更改文件夹选项4.png][4]和更改文件夹选项share.png)。
[1]: https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM/Change%20folder%20option.png [2]: https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM/Change%20folder%20option%202.png [3]: https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM/Change%20folder%20option%203.png [4]: https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM/Change%20folder%20option%204.png 5:
Niutech提供的解决方案对我来说是有效的。
http://googledrive.com/host/<folderID>/<filename>
但有2个悬而未决的问题
你不能在驱动器的同一个文件夹里有2个同名的文件,否则这个链接将无法使用。
目前还不清楚,但谷歌似乎正计划取消通过驱动器托管图像。 请看下面的链接。 https://support.google.com/richmedia/answer/6098968?hl=en
对于图片,在google viewer中打开一张图片。 即
https://docs.google.com/file/d/0Bz7qe_olclTwWDNJRDRmb1pJamM/edit
然后查看源码>。 找到单词"Texmex-thumb"。 然后在旁边会有一个链接。
不过这个答案很简单,事实上很简单,很多人都提到过,只要把图片的id放到下面的链接中就可以了https://drive.google.com/uc?export=view&id={fileId}。
但无论如何简单,我做了一个脚本在控制台中运行。 从google drive中喂入一系列完整的可共享链接,并让它们转换为上述链接。 然后他们可以简单地作为静态地址使用。
<!--开始片段。 js hide: false console: true babel.false --> -- 开始 snippet: js hide: false console: true false -->
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)
<!--结束片段-->