2017-08-11 50 views
-1
$(function() { 

    $.ajax({ 
     type: "GET", 
     dataType: "jsonp", 
     cache: false, 
     url: "https://api.instagram.com/v1/users/self/media/recent/?access_token=", 
     success: function(data) { 
      for (var i = 0; i < 20; i++) { 
       $("#pics").append("<a target='_blank' href='" + data.data[i].link + "'><img src='" + data.data[i].images.low_resolution.url + "'></img></a>"); 
       $("#text").append("<p>"+data.data[i].caption.text+"</p>"); 


      } 
     } 
    }); 
}); 

上午試圖讓Instagram的飼料API,代碼工作正常,但我有錯誤TypeError: data.data[i].caption is null,飼料文本沒有顯示所有我得到的只有3形式20 json中的元素。類型錯誤:data.data [I] .caption是空的Instagram API

data json link

+0

請分享API響應 – brk

+0

檢查鏈接API,我把http://jsoneditoronline.org/?id=17c05e938eeb42d37c330b814432e300 @brk –

回答

1

如果你看一下響應,你看,它只是意味着沒有標題(例如,看一下3號)

嘗試是這樣的:

for (var i = 0; i < 20; i++) { 
    $("#pics").append("<a target='_blank' href='" + data.data[i].link + "'><img src='" + data.data[i].images.low_resolution.url + "'></img></a>"); 
    if (data.data[i].caption === null) { 
     $("#text").append("<p>No caption</p>"); 
    } else { 
     $("#text").append("<p>"+data.data[i].caption.text+"</p>"); 
    } 
} 
+0

做工精細,謝謝非常 –

0

原因是在響應中某些標題爲空,如data[3],data[4]。檢索text這裏面caption對象之前做一個空檢查

for (var i = 0; i < 20; i++) { 
     if (res.data[i].caption !== null) { 
     console.log(res.data[i].caption.text); 
     } 

    } 
相關問題