2

URL が正常に機能していることを確認しましたが、呼び出しを機能させることができません。ここで何が間違っているのか誰にもわかりますか?ありがとう。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
  $(document).ready(function() {
    $.getJSON("http://api.flickr.com/services/rest/?method=flickr.photos.search&
    api_key=e4a2bd36f274dc8cbec976f87d31ac91&text=dandy&format=json&jsoncallback=?", function(data)
    {
       $.each(data.items, function(i,item){
       $("<img/>").attr("src", item.media.m).appendTo("#images")
      .wrap("<a href='" + item.link + "'></a>");
     });
       $('#images').cycle({
         fx: 'fade',
         speed: 'fast',
         timeout: 0,
         next: '#next',
         prev: '#prev'
      });
    });
 });

I have also tried with the authorization token and api signature: http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=e4a2bd36f274dc8cbec976f87d31ac91&text=dandy&format=json&auth_token=72157629614542470-3c6e999c34de2fef&api_sig=1ba75b356a910f6b2872f356153075bf

firebug でこのエラーを取得: JSON.parse: JSON データの後に予期しない非空白文字

4

1 に答える 1

0

あなたのスクリプトは、その中のアイテム (data.item、item.media.m など) に RSS フィードのような構造を期待しているようです。これは、Flickr API から返される JSON データのフォーマット方法ではありません。

代わりにこれを試してください:

$(document).ready(function() {
    $.getJSON("http://api.flickr.com/services/rest/?method=flickr.photos.search&  api_key=3a68f22971d8d66b521b362c312c175c&text=dandy&extras=url_m&format=json&jsoncallback=?", function(data)
    {
       $.each(data.photos.photo, function(i,item){
       $("<img/>").attr("src", item.url_m).appendTo("#images")
      .wrap("<a href='" + item.url_m + "'></a>");
    });
    $('#images').cycle({
        fx: 'fade',
        speed: 'fast',
        timeout: 0,
        next: '#next',
        prev: '#prev'
    });
    });
});​

URL に「extras=url_m」が含まれていること、および data.photos.photo と item.url_m が変更されていることに注意してください。

于 2012-12-19T12:58:02.460 に答える