图像库托管在谷歌驱动器文件夹
Image Gallery hosted in Google Drive Folder
我一直在寻找一种方法,在一个网站上创建一个画廊,从我的谷歌驱动器文件夹中的图像。我在这里分享了:https://drive.google.com/drive/u/0/folders/0Bwx-OwnNeIvwRldSVlU5SGN0dGs里面是一个简单的HTML,和一个画廊文件夹,里面有怪物卡车和可爱动物的图片。我们的目标是创建一个图库人们可以上传图片;怪物卡车和可爱的动物。
我一直在寻找各种方法来实现这一点,这是我迄今为止发现的:
简而言之,我想要实现的是在我的G-Drive的一个公开共享文件夹中获得图像的id。然后使用这些id通过JS在HTML中创建一个图库。
我的HTML现在的样子:
index . html
<h1>Cute Animals & <br>
Monster Vehicles</h1>
<div id="gallery">
<!-- all divs will append here -->
</div>
我对Drive SDK的研究:
我一直在使用这里的"尝试"部分来弄清楚我需要做什么。https://developers.google.com/drive/v2/reference/children/list示例
请求结果:GET https://www.googleapis.com/drive/v2/files/0Bwx-OwnNeIvwRG5rNzZ6OURSNEk/children?fields=items%2Fid
Response result:
200 OK
- SHOW HEADERS -
{
"items": [
{
"id": "0Bwx-OwnNeIvwaFZXVzVmMl9ILUU"
},
{
"id": "0Bwx-OwnNeIvwVk1DTEpnR0J6VHc"
},
{
"id": "0Bwx-OwnNeIvwblBHLVEza0hxY2s"
},
{
"id": "0Bwx-OwnNeIvwTkZZVXp0dDg4bXc"
},
{
"id": "0Bwx-OwnNeIvwZTN1YzZrcm53eFE"
},
{
"id": "0Bwx-OwnNeIvwYkZ5ZXpjWHhKcFk"
}]}
我想让脚本做什么:
script.js
var imageIds = <!-- ids from the the response --> ;
var x = imageIds.length;
for (var i = 0; i < x; i++) {
<!-- create a <div> -->
}
//See below*
创建一个div:在for循环中,它将在该div中创建一个具有特定"class"
和<img>
的<div>
,其中"src="http://drive.google.com/uc?export=view&id=IMAGE-ID"
的"IMAGE-ID"是从"Response"获得的。然后将<div>
添加到index.html中的<div id="gallery">
。
我希望结束的HTML看起来像:
index . html:
<h1>Cute Animals & <br>
Monster Vehicles</h1>
<div id="gallery">
<div class="brick">
<img src="http://drive.google.com/uc?export=view&id=0Bwx-OwnNeIvwaFZXVzVmMl9ILUU">
</div>
<div class="brick">
<img src="http://drive.google.com/uc?export=view&id=0Bwx-OwnNeIvwVk1DTEpnR0J6VHc">
</div>
<div class="brick">
<img src="http://drive.google.com/uc?export=view&id=0Bwx-OwnNeIvwblBHLVEza0hxY2s">
</div>
<!-- and so on ... -->
</div>
我现在不确定的是,这需要如何被认证才能从G-Drive文件夹中获得image-id。这可以通过Google Drive本身的托管链接来托管,或者可以通过Google Apps Script创建,并在那里提供HTML的功能,这将使身份验证更容易,因为您可以直接从Drive 获得所有内容。
我不明白为什么这个无处可寻,那不涉及付款。如果每个人都有机会从G-Drive文件夹中的图像创建图片库,那就太好了。
在这件事上我真的很需要你的帮助。谢谢你很多。首先,关于代码本身,应该是这样的:
document.addEventListener('DOMContentLoaded', function() {
var response = {
"items": [{
"id": "0Bwx-OwnNeIvwaFZXVzVmMl9ILUU"
}, {
"id": "0Bwx-OwnNeIvwVk1DTEpnR0J6VHc"
}, {
"id": "0Bwx-OwnNeIvwblBHLVEza0hxY2s"
}, {
"id": "0Bwx-OwnNeIvwTkZZVXp0dDg4bXc"
}, {
"id": "0Bwx-OwnNeIvwZTN1YzZrcm53eFE"
}, {
"id": "0Bwx-OwnNeIvwYkZ5ZXpjWHhKcFk"
}]
};
var imageIds = response.items.map(function(item) {
return '<div class="brick"><img src="http://drive.google.com/uc?export=view&id=' + item.id + '"></div>';
});
document.getElementById('gallery').insertAdjacentHTML('afterbegin', imageIds.join(''));
});
<div id="gallery"></div>
关于授权,请查看他们的文档
- 谷歌驱动器的谷歌选择器
- 使文件夹共享谷歌驱动器api v3
- 应用程序脚本-自动从谷歌驱动器删除超过3天的文件-获取文件列表
- 获取谷歌驱动器folderId javascript
- 如何使用谷歌驱动器api使文件可共享
- 谷歌驱动器pdf没有正确上传到s3服务器
- 谷歌驱动器公共
- 使用javascript和mvc3从谷歌驱动器下载文件
- 文件在谷歌驱动器选择器上传后的绝对路径
- 谷歌驱动器选取器错误
- 谷歌驱动器API应用程序数据文件夹,是真的那么困难
- 谷歌驱动器:使用javascript api获取(根)文件和文件夹(只获取驱动器上删除的文件)
- 谷歌驱动器如何打开文件
- 谷歌驱动器选择器:只显示顶级文件夹
- 如何在谷歌驱动器上托管的文件夹中启用CORS
- 使用现有的访问令牌在.net中请求谷歌驱动器
- 我做错了什么谷歌驱动器Picker示例代码
- Javascript日期格式与谷歌驱动器REST API
- 如何在谷歌驱动器上创建具有BinaryString或任何FileReader选项的图像文件
- 图像库托管在谷歌驱动器文件夹