0

PHPからJSONデータを取得してリストビューに配置するためのコードを作成しました。これはローカルホストでうまく機能します。PHPファイルをWebサーバーに配置し、Javascriptで呼び出すと、エラーが表示され、データが取得されません。

私が使用したこの方法:

 var dataSource = new kendo.data.DataSource({
                transport: {
                    read: {
                     
                       //url: "userchk.php",    //this works in localhost  
                       url: "http://example.com/web/userchk.php",  this is not working in localhost 
                       
                        dataType: "json", // JSONP (JSON with padding) is required for cross-domain AJAX
                        data: { //additional parameters sent to the remote service
                            q: "javascript"
                        }
                    }
                },

最初のURLデータはローカルホストに取り込まれ、正常に機能しますが、2番目のURLは機能しません(ただし、ブラウザーでURLを実行するとデータが表示されます)。

次のようなエラーが表示されます。

XMLHttpRequestはhttp://example.com/web/userchk.php?q=javascriptをロードできません。Origin http:// localhostは、Access-Control-Allow-Originでは許可されていません。

良い反応を待っています

4

2 に答える 2

1

これは、ほとんどのWebブラウザが実装するのと同じオリジンポリシーに関連しています。アクセスしようとしているphpファイルが現在のサーバー(localhost)以外のサーバーにあるようです。

ローカルにアクセスするのに疲れている場合:

URLを/web/userchk.phpに変更することをお勧めします

別のサイトにアクセスしようとしている場合

dataTypeを「jsonp」に変更することをお勧めします

TwitterでkendoUIデータソースのを見てみてください。彼らはjsonpを使用してTwitter(別のオリジン)にアクセスしようとします。

于 2012-04-16T06:10:33.007 に答える
1

これは、クロスドメインの問題が原因である可能性があります。datatype:jsonpを使用する必要があります。ODATAバージョン2.0フィードからデータを読み取るサンプルコードは次のとおりです。

 studentsData = new kendo.data.DataSource(
            {
                type: "odata",
                transport: {
                    read: {

                        url: "http://server/Service.svc/Students",
                        dataType: "jsonp",

                        data: {
                            Accept: "application/json"
                        }
                    }
                },
                serverfiltering: false,
                serverPaging: true,
                batch: false,
                pageSize: 10

            });

完全な「KendoUIListViewControl and OData inWindowsPhoneApplication」の投稿を読むことができます。

ありがとう@debug_mode

于 2012-06-18T07:50:06.643 に答える