我正在尝试在laravel中执行ajax调用。 ajax调用记录我的数据我想要的方式,但一直给我500错误。我已经读过你需要在数据字段中设置_token。但这对我没有用。所以,我可以记录所有数据,但是我想把它推送到数据库我不断收到这个错误。
这是我的代码。
的script.js
$('.likeBtn').click(function(e){
e.preventDefault();
var userid=$(this).siblings('input[name=userID]');
console.log(userid[0].value);
var useridarticle=$(this).siblings('input[name=userIdFk]');
console.log(useridarticle[0].value);
var articleid=$(this).siblings('input[name=articleId]');
console.log(articleid[0].value);
var token=$(this).siblings('input[name=_token]');
console.log(token[0].value);
$.ajax({
url:"articles" ,
type: "post",
data: {'user_id':userid[0].value,
'article_id':articleid[0].value,
'user_id_fk':useridarticle[0].value,
'_token': token[0].value},
success: function(data){
console.log(data);
}
});
});
控制器。
if(Request::ajax()) {
$data = Input::all();
print_r($data);
}
我的令牌设置在我的master.blade的标题中
<meta name="_token" content="{!! csrf_token() !!}"/>
在我的master.blade结束时
$.ajaxSetup({
headers: { 'X-CSRF-Token' : $('meta[name=_token]').attr('content') }
});
我没看到什么?仅供参考,您可能会问为什么我需要变量。我需要它们,因为我在foreach中生成相同的形式。这对我来说很好,我得到了我想要的数据。