2016-01-07 158 views
1

這是我的腳本:發送Ajax請求:跨來源請求阻止

$.post('index.php?r=site/filterbyprice',{ 
     price_range:values, 
     _csrf : $("#csrftoken").val() 
     } 
     ,function(r){ 
      console.log(r); 
      if(r==""){ 
       $("#all-ads").html('<div class="error-page"></div>'); 
      } 
      else{ 
       $("#all-ads").html(r); 
      } 
    }); 

控制器代碼:

public function actioAbc(){ 
    echo 'inside abc'; 
} 

我面臨着以下錯誤:跨來源請求阻止:將同源策略不允許在http://mandigoods.com/frontend/web/index.php?r=site/abc處讀取遠程資源。 (原因:CORS頭「接入控制 -

+0

http://stackoverflow.com/questions/24199595/how-to-make-ajax-call-in-yii2 – Bloodhound

回答

0

可能是一個頭的配置問題首先,嘗試生成您的網址:

$url = yii\helpers\Url::to(['site/filterbyprice']); 

,幷包括到您的看法是這樣的:

$this->registerJs(<<<JS 

$.post('{$url}',{...}); 

JS; 
); 

不包括應由Yii2自動處理的_csrf : $("#csrftoken").val()

然後,我會檢查你的關於你的頭服務器配置(阿帕奇/ Nginx的),檢查this answer的配置。