0
我想用ajax.I提交我的聯繫表單,我也在meta標籤中添加了csrf標記。但是我仍然得到關於頭錯誤500laravel ajax表單提交csrf令牌不起作用
<meta name="csrf-token" content="{{ csrf_token() }}">
我laravel路線:
Route::post('/mail',[
'uses'=>'[email protected]',
'as'=>'api.postContact'
]);
控制器方法
public function postContact(Requests $request)
{
if(Request::ajax()) {
$data = $request::all();
return response()->json([
'data'=>$data
]);
}
//$contact = new ContactModel($sub, $sender, $email, $body);
//ignore the fact that i am not properly utilizing variables as i am testing.
}
Ajax調用
$.ajaxSetup({
header:$('meta[name="csrf-token"]').attr('content')
});
$.ajax({
url:'http://abounde.com/mail',
type:'POST',
dataType:'json',
data:$(this).serialize(),
success:function(data){
if(data){
console.log('submitted ');
}else{
//default bg
console.log('problem submission ');
}
},
error: function(data){
console.log(data);
}
});
@ RolfPedroErnst是laravel在類中構建的以返回json響應 –
可能的duplicatea te [Laravel csrf標記不匹配ajax POST請求](http://stackoverflow.com/questions/32738763/laravel-csrf-token-mismatch-for-ajax-post-request) – Danh
錯誤500通常不是一個標誌身份驗證失敗,這更多的是讓服務器停滯的一些代碼錯誤的跡象。你看看ResponseText了嗎? – Kjell