【Laravel】LaravelでAjax(jQuery)を使用する

LaravelでjQueryによるAjax通信を行うための手順をメモします。

環境:Laravel Framework 5.8、 jQuery 3.3.1

1. ルーティングの作成
クライアントからAjax通信先となるコントローラーへのルーティングをroutes/web.phpへ作成する。

routes/web.php
(ルーティングの種類をajaxのHTTPメソッドに合わせる)

2. Ajax関数を記述
(public/jsディレクトリ内のJavaScriptファイル)

(クライアント側)

CSRF対策としてheaders(リクエストヘッダ)へトークンを指定。
指定するトークンはクライアント側のhead内、meta要素へ埋め込んで用意しておく。

type: ‘POST’とした場合こちらを行わないと※エラー「419 (unknown status)」が発生します。
※ブラウザのコンソールにエラーメッセージが出力される。

urlパスへ、値(id)をバインドしコントローラーのメソッドの引数に渡せるようにしている。

3.(通信先)app/Http/Controllers/DeleteController.php

参考:
Laravel 5.0 HTTPルーティング
Laravel 5.5 CSRF保護

Follow me!