[英]CodeIgniter + AJAX Internal Error 500
我正在嘗試對我的Notification控制器中的一個方法進行ajax調用。
我的方法是:
public function testeAjax()
{
if($this->chamadaAjax())
echo 'Ajax';
else
echo 'Form';
}
$this->chamadaAjax()
簡單執行, $this->input->is_ajax_request()
這是我的Ajax電話:
$.ajax({
type: "POST",
url: '<?php echo base_url(); ?>/office/notificacao/testeAjax',
success: function(html) {
alert(html);
}
});
我有一個帶有兩個按鈕的表單,一個用於表單提交,另一個用於ajax請求。
事實是,當我向ajax中添加一些數據,例如:data:“ nome = Gerep”並調用它時,我收到一個Internal Erro 500
當我不發送任何數據,它的工作原理,它返回提交和Ajax當我打電話Ajax請求時,我的形成 。
有任何想法嗎?
編輯使用FireBug,這是我得到的:
f.support.ajax.f.ajaxTransport.sendjquery-1.7.1.min.js:4
f.extend.ajaxjquery-1.7.1.min.js:4
testenotificacao:140
(anonymous function)notificacao:113
onclick
不確定如何通過CRSF保護來管理服務器,但是如果需要在域之間共享內容,則需要使用CORS 。 只需在Web服務器上定義Origin策略,您就可以開始了。
您是在URL中傳遞數據還是在定義對象? 即:正在傳遞的數據(尤其是POST)應如下所示:
$.ajax({
type: "POST",
url: '<?php echo base_url(); ?>/office/notificacao/testeAjax',
data: { nome: "Gerep" },
success: function(html) {
alert(html);
}
});
而不是這樣的:
$.ajax({
type: "POST",
url: '<?php echo base_url(); ?>/office/notificacao/testeAjax?nome=Gerep',
success: function(html) {
alert(html);
}
});
問題出在跨站點請求偽造 ,禁用它可以解決問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.