本リポジトリは、Laravel Sanctumのサンプル実装です。 APIトークンを利用した認証を考慮しつつ、Multi Authを実装しています。
※ セッション認証は別途調査する予定
App/User
、App/Admin
の複数Modelで、Sanctumを利用し認証します。
データについては事前にFactoryを利用し登録しています。
- ログイン処理
- ログインユーザーの取得
を中心に実装しています。
URL | 説明 |
---|---|
/api/login |
UserログインAPI |
/api/me |
ログインユーザー取得API |
/admin/api/login |
AdminログインAPI |
/admin/api/me |
ログイン管理ユーザー取得API |
curl --request POST \
--url http://127.0.0.1:8000/api/login \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{
"email": "[email protected]",
"password": "password"
}'
curl --request GET \
--url http://localhost:8000/api/me \
--header 'accept: application/json' \
--header 'authorization: Bearer 6|oW3GIXpw48kcfAc1FcqA4gm4zOBFfVgNVGdMCqIImFMzoaEmTqSY4fsOFNxXymPnXPFXU5mfMYg7pMI7'
curl --request POST \
--url http://127.0.0.1:8000/admin/api/login \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{
"email": "[email protected]",
"password": "password"
}'
curl --request GET \
--url http://127.0.0.1:8000/admin/api/me \
--header 'accept: application/json' \
--header 'authorization: Bearer 4|dbtGtsoXAyE7VH1yaIpvDsI3F2UqelBl2YkOI8j17xvqCgfU5k4kk9D37OhlBpTur2uJUcttwCGSFV1U'
- Insomnia : HTTPクライアント
The Laravel framework is open-sourced software licensed under the MIT license.