0

Cakephp のデフォルト インストールの webroot フォルダーの下にファイルがあり、json 応答を取得したいと考えています。しかし、それをしようとすると、このエラーが発生します

XMLHttpRequest はhttp://test.com/companies/all_company_informationを読み込めません。Origin http://dev.localは Access-Control-Allow-Origin で許可されていません。

 $.ajax({

         type: 'POST',
         url: '/controller/method',
         dataType: 'json',
         success: function(data){

             console.log(data);

         }

     });

グーグルでいくつかの情報を読みましたが、これを理解していないと思います。

編集

jsonp を使用すると、このエラーが発生します

リソースはスクリプトとして解釈されますが、MIME タイプ text/html で転送されます:

$.ajax({

         type: 'POST',
         url: '/controller/method',
         dataType: 'jsonp',
         success: function(data){

             console.log(data);

         }

     });
4

1 に答える 1

1

目的のjsonで応答するように設定された適切なコントローラーで関数を作成してみてください。json で応答するように構成されたコントローラー:

function feed($date){
$this->layout = 'ajax';
$this->autoLayout = false;
$data = $this->Model->find();
echo json_encode($data);
}

私の ajax リクエストが通過し、その応答が何であるかを確認するために、Firefox 拡張機能の firebug を多用しています。

于 2012-05-16T17:59:24.597 に答える