7

last.fm APIに対して同期リクエストを行う必要がありますが、GETとjsonを一緒に使用すると、リクエストは非同期になります。

私のコード:

$.ajax({
      async: false,
    dataType: "json",
    url: "http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist="+artist+"&api_key="+apiKey+"&format=json&callback=?",
    success: function(html){
          imgURL = html.images.image[1].sizes.size[0]["#text"];
    }
});

dataType: "json"を削除するか、POSTを使用すると、再び同期されますが、jsonとGETの両方を使用することに依存しています。

何か案は?

4

1 に答える 1

13

ああ、これはクロスドメインリクエストを実行しようとしているためです。クロスドメインリクエストは動的スクリプトタグに依存しており、同期することはできません。データ型jsonとGETメソッドを使用する必要があります。

POSTを実行するか、データ型を削除すると、同一生成元ポリシーのためにアクセスエラーが発生します。すぐに戻りますが、失敗として戻ります。

于 2009-06-05T11:19:48.457 に答える