1

サイトのページの人気度を取得しようとしています

<POPULARITY URL="google.com/" SOURCE="panel" TEXT="1"/>

アレクサAPIを使用。投稿したら

http://data.alexa.com/data?cli=10&dat=snbamz&url=http://www.google.com 

ブラウザーに xml 応答を取得しますが、ajax を使用すると何も返されません

$.ajax({    type: "GET",
            url: "http://data.alexa.com/data?cli=10&dat=snbamz&url=http://www.google.com",
            dataType: "xml",
            cache: false,
            success:function(data){

            alert(data); 

            }

        });

私は何を間違っていますか?

4

2 に答える 2

0

私はそれを次のように構成します:

$.get(ajax_url, data, function(response) {
        alert(response);
  });

また、データに対して(後で指定するgetのではなく)やりたいと思います。$.postget

于 2012-05-19T21:24:03.137 に答える
0

ドメインからではないxmlファイルを読み込もうとしているからだと思います。クロスドメイン JavaScript ルールに違反するため、ほとんどのブラウザはデフォルトでこれをブロックします。

開発者ツール (ほとんどのブラウザーで F12 キー) のコンソールを見ると、次のようなエラーが表示されます。

XMLHttpRequest は http://data.alexa.com/data?cli=10&dat=snbamz&url=http://www.google.com&_=1337464540283をロードできません。Origin null は、Access-Control-Allow-Origin では許可されていません。

これを回避する最も簡単な方法 (PHP を実行していると仮定) は、独自のサーバーで xml ファイルをラップする小さな php ファイルを作成し、そこからロードすることです。

例については、この質問を参照してください。

Ajax: 別のドメインから XML をロードしますか?

于 2012-05-19T22:04:20.753 に答える