1

JSON Webサービスリンクを提供しました。その下にデータがあり、ajax jWueryを使用してhtmlテーブルに表示したかったのです。IE からダウンロードすると、.json 形式を使用してローカルで動作しますが、Web サービス リンクは動作しません。リンクが機能しているかどうかを確認しましたが、JSON ビューアーで機能しています。何をすべきか?

$(document).ready(function() {
    $.ajax({  
       type: "GET",
       data : "{}",
       contentType: "application/json",
       //url: 'myfile.json',
       url: 'http://107.22.160.4/ICatService/Service.svc/GetEvent/10/iphone2x',
       dataType: "json",
       success: function(data) {  
         $.each(data.Get_TappyokaResult, function(index, data){
               var tblRow = "<tr>"+
                             "<td>"+data.Back_id+"</td>"+
                             "<td><img src="+data.Back_image+" class=rowimg /></td>\n"+
                             "<td>"+data.Back_type+"</td>\n"+
                             "<td>"+data.DateModified+"</td>"+
                            "</tr>"
               $(tblRow).appendTo(".dataTable");
               $('table tr:odd').addClass('oddrow');
               $('.dataTable tr:even').addClass('evenrow');
        });
     },  
     error: function(data){  
           alert("error");
     }  
  });
});

myfile.json ローカル ファイル ----------------------------------

{
 "Get_ICatelog_EventResult":[
      {
        "Date":"26\/07\/2012", "Description":"sample event", "Event_Id":5, "Heading":"sample", "Image":"http:\/\/thisisswitch.com\/ICatalogsite\/EventImage\/fc8e84f2-6729-42c0-8e0e-c6961edd2df5.JPG", "Status":0, "Time":"14:00:00", "User_Id":10
      }
  ]
}
4

2 に答える 2

0

Webサーバーを使用していますか?いいえの場合?あなたがすることを確認してください。file:///ajaxリクエストに問題があります。そして、あなたがそうなら、あなたはおそらく他の起源に行くでしょう。(http://107.22.160.4)つまり、クロスオリジンの問題です。

ajaxリクエストの発信元は、ターゲットと同じプロトコル(http / https)ドメイン(domain.com)とポート番号(デフォルトは80)を持っている必要があります。

正しいヘッダー情報を提供するCORS(Cross Origin Recource Sharing)のような回避策があり、別のオリジンの日付にアクセスできますが、ほとんどの場合、サーバー側で設定できる必要があります。

もう1つのオプションは、サーバー内でトラフィックを転送することです。

または、phpプロキシファイルを使用します。そのファイルはデータにアクセスし、 CORSを使用してデータにアクセスできるように、データに安全にアクセスしたり、ヘッダーを変更したりできます。

これがphpの例です

フラッシュプロキシまたは任意の種類のバックエンド言語(asp、jsp、...)を使用することもできます

于 2012-08-02T08:03:25.407 に答える
0

Web サービスを制御できる (または知っている人が制御している) 場合は、出力形式を jsonp http://en.wikipedia.org/wiki/JSONP http://api.jquery.com/jQuery.getJSONに変更できます。 /

于 2012-08-02T16:17:11.443 に答える