私はLaravelを新しくしました。私は私のlaravelアプリケーションでAJAXリクエストを作成しようとしていますが、私は500(内部サーバーエラー)を取得しています。 だから、ここ.bladeファイルで私の要求です:LaravelでAJAXリクエストを行うと500エラーが発生する
<script>
$(document).ready(function() {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$('#getRequest').on('click', function() {
$.get('getMessages', function (data) {
$('#target').append(data);
});
});
});
</script>
私は、トークンがこの問題の原因ではないことを確認する.ajaxSetupを追加しました。だから私はまた、この.bladeファイルに次のタグを入力:ここ
<meta name="csrf-token" content="{{ csrf_token() }}" />
は私route.phpファイルです:
Route::get('getMessages', '[email protected]');
そしてここに原因の方法に私のコントローラです:
public function getMessages()
{
return "OK";
}
このURIのroute.phpファイルで、私は異種の関数を作成することができ、同じことになることがわかっているので、問題は私にとっては難しいことです。か否か。私は実際にコントローラの方法を指すのではなく、この
Route::get('getMessages', function()
{
return "OK";
});
をすれば、それが動作するので、私は知りません!しかし、私はコントローラで動作する必要があります。
私のコントローラは、他のメソッドについては正しく機能しており、メソッドの名前はどこでも正しく綴られています。
私はWindows上でXAMPPを使用しています。私は現在のLaravelアプリケーションでのみ動作するようにXAMPPを設定しています。ブラウザで「localhost」と入力すると、アプリケーションページに移動し、データベースデータフェッチが正しく機能します。
コントローラー名のスペルが間違っていることに気付きました。しかし、まだ問題があります。私はそれがAJAXの要求かどうかをチェックすると、私は同じエラーが発生します。そして、このチェックをroutes.phpファイルから直接実行すると動作します。 'if(Request :: ajax()){return 'ho'; } ' –