昨夜のほとんどを、Flickr API に対して JQuery の「getJSON」メソッドを試すことに費やしました。JQuery ドキュメントからいくつかの例を見て、それらを機能させることができましたが、カスタム API 呼び出しから JSON を読み取ろうとすると、惨めに失敗しました。
切れ端:
これは機能します:
//JQuery Flickr example code - works!
$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=?&format=json",
function(data) {
$.each(data.items, function(i,item){
alert(item.media.m);
if ( i == 3 ) return false;
});
});
これは失敗します!
//Custom Flickr API Call - nothing?fail?
$.getJSON("http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=c258d8ae4c29bb74da198c6ac3874671&text=Mclaren&per_page=3&format=json&callback=?&nojsoncallback=1",
function(data) {
alert(data);
}).error(function(jqXHR, textStatus, errorThrown) { alert(textStatus + errorThrown); });
2 番目の API 呼び出しは有効なリソースであり、ブラウザー/フィドラーで動作し、JSON コンテンツを表示できますが、私の JS コードではエラーが発生します
"parsererrorError: jQuery18007627279118169099_1345796861535 was not called".
この時点で行き詰まりました。最終的な目標は、返された JSON を処理し、ネストされた配列内の各「写真」オブジェクトを反復処理して、反復中にサブ プロパティに簡単にアクセスできるようにすることです。
[写真インスタンス].id
[写真インスタンス].所有者
[写真インスタンス].secret など...
どんな助けでも大歓迎です。
参照: http://www.flickr.com/services/api/response.json.html
注: すべての API キーはテスト用であり、まもなく破棄されます。