我想用ajax.I提交我的联系表单,我也在meta标签中添加了csrf标记。但是我仍然得到关于头错误500laravel ajax表单提交csrf令牌不起作用
我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);
}
});
错误:
+0
@ RolfPedroErnst是laravel在类中构建的以返回json响应 –
+0
可能的duplicatea te [Laravel csrf标记不匹配ajax POST请求](http://stackoverflow.com/questions/32738763/laravel-csrf-token-mismatch-for-ajax-post-request) –
+0
错误500通常不是一个标志身份验证失败,这更多的是让服务器停滞的一些代码错误的迹象。你看看ResponseText了吗? –