0

ETA: これが JSFiddle です。コンソールを確認してください: http://jsfiddle.net/GZNwK/1/

だから私はIMGUR APIからsubredditをロードしようとしています:

$.getJSON('http://imgur.com/r/cats.json?callback=?',function(data){
    console.log(data)
})

しかし、私はこのエラーで終わります:

ここに画像の説明を入力

これがなぜなのか正確にはわかりません。Flickr API と Instagram API を .jsom 形式で読み込むことができます。構文まったく同じようです。IMGUR API でエラーが発生するのはなぜですか? また、?callback=? を削除すると、JSONP を使用しない場合、クロスドメイン リクエストは失敗します。

4

1 に答える 1

3

これは、JSONP リクエストをサポートするリソースではないためです。IMGUR についてはよくわかりませんが、使用できる API があるようです: http://api.imgur.com/

別の解決策は、YQLを使用することです。

$.ajax({
    url: 'http://query.yahooapis.com/v1/public/yql',
    data: {
        q: 'select * from json where url="http://imgur.com/r/cats.json"',
        format: 'json'
    },
    type: 'get',
    dataType: 'jsonp'
}).success(function (data) {
    /* results are in data.query.results.json.gallery */
    alert(data.query.results.json.gallery[0].title);
});

例: http://jsfiddle.net/sNSEA/

可能であれば、API を介して「正しい」方法でこれを行うことを強くお勧めしますが (一目見ただけでは何も得られませんでした)。

于 2012-08-12T23:46:53.343 に答える