Google云端硬盘中的JSON文件列表

时间:2014-01-11 14:34:14

标签: json google-drive-api

我有一个代码片段,它会获取PICASA公共相册中的图片列表,并构建滑块中使用的列表。简化代码如下所示:

var usrID = "555555555555555555555";
var albID = "5555555555555555555";
$.getJSON(
"https://picasaweb.google.com/data/feed/base/user/"+usrID+"/albumid/"+albID+"?alt=json&kind=photo&hl=en_US&callback=?",
function(data) {         
  var picAlbumLst = '<ul id="slider">';
  $.each(data.feed.entry, function(i, element) {
    var picUrl = element["media$group"]["media$thumbnail"][0].url;
    picAlbumLst += ( 
    '<li style="text-align:center">'+
    '  <img src="'+picUrl+'"/>'+
    '</li>'
    );
  });
  picAlbumLst += "</ul>\n";
  ...
});

我正在考虑将我的照片从Picasa移到Google云端硬盘。有没有办法提出类似于我的旧PICASA的请求,以便从Google云端硬盘(匿名用户)获取网址?语法越接近,端口就越容易(我把它放在一边)。

1 个答案:

答案 0 :(得分:0)

之前很多次,我发布了一个问题,因为我懒得去努力工作。但我最终设法解决了这个问题。因此,这是Google云端硬盘解决方案:

1 /执行所有“OAuth 2.0”舞蹈以获取对文件夹[IMAGE_FOLDER_ID]的访问权限。即使该文件夹是公开的,该应用程序也必须经过身份验证/授权。

2 /不要忘记加载Google云端硬盘服务的API

  

gapi.client.load('drive','v2',makeRequestCB)

...这里是检索文件网址的循环

function makeRequestCB() {
  gapi.client.drive.files.list({
    'q': '"[IMAGE_FOLDER_ID]" in parents',
    'fields' : 'items/id'      
  }).execute(function(resp) {
    var picAlbumLst = '<ul id="slider">';
    for (i=0; i<resp.items.length; i++) {
      var id = resp.items[i].id;
      picAlbumLst += ('<li><img src="https://docs.google.com/uc?id='+id+'"/></li>');
    }
    picAlbumLst += "</ul>\n";
  });
}

希望它有所帮助。