Flickr API错误,Json回调

Ale*_*exC 3 api jquery json flickr

为什么我的代码中出现这种错误:

"错误:jsonFlickrApi未定义"

    $.getJSON('http://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&api_key=669158895706254986e97354a3c7e9a9&photoset_id=72157623477817483&extras=original_format&format=json&jsoncallback;=?',
    function(data){
        var classShown = 'class="lightbox"';
        var classHidden = 'class="lightbox hidden"';


        $.each(data.photoset.photo, function(i, rPhoto){
            var basePhotoURL = 'http://farm' + rPhoto.farm + '.static.flickr.com/'
                + rPhoto.server + '/' + rPhoto.id + '_' + rPhoto.secret;
......
Run Code Online (Sandbox Code Playgroud)

有JSON数据类型或其他的syme问题,建议我如何解决它,请

谢谢

Nic*_*ver 6

您的网址末尾有点偏离,这个:

....&jsoncallback;=?
Run Code Online (Sandbox Code Playgroud)

应该:

....&jsoncallback=?
Run Code Online (Sandbox Code Playgroud)

jQuery使用动态命名函数自己填充此方法(您function(data)将转换为此命名函数或JSONP工作).由于格式关闭它没有正确替换它,默认方法是jsonFlickrApi.

如果您直接访问该网址(这是没有回调),您会看到它如下所示:

jsonFlickrApi({ ... })
Run Code Online (Sandbox Code Playgroud)

如果你确实提供了一个回调(比如这个url),它看起来像这样:

myFunction({ ... })
Run Code Online (Sandbox Code Playgroud)

这就是jQuery 应该做的,但是由于格式错误的URL它没有替换它?,修复它并且它会这样做,它将调用正确的方法,而不是默认的方法.

  • 该死的,我是如此愚蠢,对不起,谢谢!! (2认同)