Tumblr API无法检索照片标题

时间:2013-10-04 00:21:11

标签: jquery ajax json api tumblr

我正在使用Tumblr API在我的网站上生成图片Feed。

我可以将照片和网址确定,但不是字幕。

我制作了一个简单地循环播放帖子的脚本:

成功:功能(结果){

var i = 0;

 while (i < results.response.posts.length) {

    if (type == "photo") {
     var photourl = results.response.posts[i].photos[0].alt_sizes[0].url;
     var caption = results.response.posts[i].caption;

     $("#tumnews #newscara").append("<li><div class='tumpost'><a href='" + link + "'><img src='" + photourl + "' alt='" + title + "'/><div class='tumcaption'>" + caption + "</div></a></div></li>");
   }

  i++;
 }//END WHILE

但我无法检索字幕数据,即使文档说它只是使用术语“标题”(http://www.tumblr.com/docs/en/api/v2#photo-posts)进行检索。

我也尝试过:

  var caption = results.response.posts[i].photos[0].caption;

  var caption = results.response.posts[i]photos[0].caption[0];

但我没有得到任何结果 - 甚至没有任何错误。

有人知道如何正确地做到这一点吗?

2 个答案:

答案 0 :(得分:1)

线索在文档中

  

具有属性的照片对象:标题 - 字符串:用户提供的标题   个人照片(仅限照片)

您尝试的代码与 Photoset 帖子的单张照片的标题有关。

var caption = results.response.posts[i].photos[0].caption

您的代码似乎建议您处理照片帖子而不是 Photoset 帖子,因此您将使用以下内容:

var caption = results.response.posts[i].caption

希望有所帮助。

答案 1 :(得分:0)

首先,我会使用$ .each()进行循环,因为你使用JQuery:

success: function(results){
  console.log(results); // <-- This is your best friend

  $.each(results.response.posts, function(k, post){
    if (type == "photo") {
     var photourl = post.photos[0].alt_sizes[0].url;
     var caption = post.caption;
     $("#tumnews #newscara").append("<li><div class='tumpost'><a href='" + link + "'><img src='" + photourl + "' alt='" + title + "'/><div class='tumcaption'>" + caption + "</div></a></div></li>");
    }
  });

}

如果您没有从API中检索期望的结果,请尝试使用console.log(结果);查看您在Firebug或其他网络检查员中使用的数据类型。