1

このリンクからJquery ana Ajaxを使用してJSONデータを読み取りたい

http://praytime.info/getprayertimes.php?lat=31.950001&lon=35.9333&gmt=180&m=3&y=2013&school=0&format=json&callback= ?

これは私のコードです:

 $(document).ready(function() { 

 var strUser ="http://praytime.info/getprayertimes.php?lat=31.950001&lon=35.9333&gmt=180&m=3&y=2013&school=0&format=json&callback=?";

 $.ajax({ 
   url: strUser ,
   dataType: 'jsonp',    
   success: function(data){

        jQuery.each(data, function(){
           alert("yes");

       });                
    }

  });


 });

このコードを他のリンクで試してみましたが、正しいのですが、指定されたリンクから何も出力されません。助けてもらえますか??

4

2 に答える 2

1

URL は出力されますjsonが、クロスドメインが必要jsonpです。

すべての API が提供するわけではありませんjsonp。クロスドメイン API が提供jsonpされておらず、CORS有効になっていない場合は、プロキシを使用してデータを取得する必要があります。same origin policy

于 2013-02-04T06:40:34.100 に答える
1

JSONP でアクセスしようとしている URL は、JSONP をサポートしていません。サーバーは応答を JSON として返す必要がありますが、要求されたコールバックで応答をラップする必要もあります。したがって、この問題を解決する方法は、サーバー側のプロキシを使用することです。これは、指定された URL から応答を取得し、クライアント側の js に渡します。

$.ajax({
  type: "GET",
  url: url_to_yourserverside_proxy,
  dataType: "json",
  success: function( data ) {
      console.log(data);
  }
});

url_to_yourserverside_proxy指定された URL から応答を取得するサーバー側ファイルはどこ ですか

于 2013-02-04T06:45:17.793 に答える