apiサーバ@laravel8で、returnするjsonのフォーマットをResponse::macroを使って、統一規格にしてみた

apiサーバ@laravel8で、returnするjsonのフォーマットをResponse::macroを使って、統一規格にしてみた

参考URL
https://saitoblog.page/posts/2021-05-23/

1. サービスプロバイダ(全体で使う関数)を作る

2. 実装する

3. laravelシステム(app/config/app.php)に登録する

4. 使ってみる
routes/api.php

ちゃんとJSONで返ってくる
http://localhost/laravel8/public/api/test
{“message”:”hello, world”}

5. 正常終了とエラー終了で返すJSONを分けてみた

6. 正常終了時のJSONレスポンス

7. 処理失敗時のJSONレスポンス

8. エラー時の処理
app/Exceptions/Handler.php

9. Restful APIのルーティング(routes/api.php)で、対応するモデルが見つからない時
http://localhost/laravel8/public/api/station/9999
routes/api.phpで以下のように書くと、エラー処理してくれる

レスポンス・マクロの粒度というか、どのくらいでまとめるかがキモやな。
とりあえず、正常・失敗・エラー・対応モデルなし(invalid ID)の4種類で書いてみた。