我想使用Laravel 5做一個簡單的Ajax帖子。我讀了Csrf令牌匹配有一個問題,並且我可以把我的uri放入VerifyCsrfToken期望來繞過這個。這部分功能,但是現在,當我發佈帖子時,我收到了422錯誤。錯誤422阿賈克斯發佈使用Laravel
難道我擺烏龍在我的代碼?我怎樣才能得到這個工作?以下是我有:
HTML:
<div class = "q-form">
{!!Form::open(array('url' => 'questions')) !!}
<div class = "form-group">
{!! Form::hidden('user_id', $myid, ['class' => 'form-control']) !!}
{!!Form::label('title', 'Title:')!!}
{!!Form::text('title', null, ['class'=> 'form-control'])!!}
{!!Form::label('question', 'Question:')!!}
{!!Form::textarea('question', null, ['class'=> 'form-control area', 'placeholder' => 'What would you like to ask?'])!!}
{!!Form::submit('Ask!', ['class'=> 'btn btn-danger form-control ask'])!!}
</div>
{!! Form::close() !!}
</div>
JS:
$('.ask').click(function(e) {
e.preventDefault();
var postData = $(this).serializeArray();
var base_url = 'http://rem-edu-es.eu1.frbit.net/';
$.ajax({
type: "POST",
url: base_url + "questions",
data: postData,
success: function (data) {
console.log(data);
}
});
});
控制器:
public function book()
{
if(Request::ajax()){
return Response::json(Input::all());
}
}
VerifyCsrfToken:
class VerifyCsrfToken extends BaseVerifier
{
protected $except = [
'book/*',
'book',
'questions'
];
}
什麼是開發者控制檯顯示在該響應的網絡選項卡中的錯誤? – JSelser
我在網絡選項卡中看不到錯誤。只是這在控制檯POST http://rem-edu-es.eu1.frbit.net/questions 422(不可處理的實體) –
這裏添加錯誤控制檯的照片。這次它確實發生了一個錯誤。 –