第06回: API Resourceとレスポンス統一 — JSONの形式は「Controller」ではなく「Resource」が決める
APIレスポンスの形式がエンドポイントごとに微妙に差い、フロントエンドの頓いが増える――この問題は、レスポンス整形ロジックが Controllerやモデルに散らばっている ことから生まれます。
Category
APIレスポンスの形式がエンドポイントごとに微妙に差い、フロントエンドの頓いが増える――この問題は、レスポンス整形ロジックが Controllerやモデルに散らばっている ことから生まれます。
$request->validate([…]) が100行を越えている、あるいは条件付きルールや配列バリデーションがヨリにたってくる――Controllerの記述が膨らんできたとき、Form Requestがその解決策です。
Route::get(‘/posts/{id}/comments/{cid}’, …) のようなルートがファイル中に散らばっていないでしょうか?ルート定義とControllerが糸引っ張り合いの状態になると、新しいエンドポイントを追加するたびに全体を見回す必要が出てきます。
「認証ミドルウェアを設定したはずなのに、なぜかAPIが素通りする」「ログが二重に出力される」――こうした不具合の多くは、ミドルウェアの 順序や適用範囲の誤解 から生まれます。
プロジェクトが成長するにつれて、AppServiceProvider の register() がどんどん膨らんでいく――これは多くのLaravelプロジェクトで起きる「初期化処理の肥大化」です。依存登録・イベント購読・ポリシー登録が一か所に混在すると、変更のたびに影響範囲が読め…
app(PaymentGateway::class) と書くだけで、設定ファイルも書かず、new もせずにオブジェクトが降ってくる。これはなぜでしょうか?Laravelを深く使うほど「どこで何が解決されているのか」が分からなくなる瞬間が来ます。サービスコンテナを理解すると、その霧…