Laravel POSTリクエストが正しく動作しない

実現したいこと

POSTリクエストで、フロント側から受け取ったJSON形式のデータをDBに保存したいです。

発生している問題・分からないこと

POSTリクエストを送信すると、LaravelのバージョンがJSON形式で返ってくる

Postmanで、body内にJSON形式のデータを入力、header内にContent-Typeをapplication/jsonと設定して、POSTリクエストを送信しました。

※laravel.logに出力されたログ
イメージ説明
※定義した配列はddメソッドが動作しているか確認するために記述しています。
イメージ説明
※GETリクエストの結果
イメージ説明
※POSTリクエストの結果
イメージ説明

エラーメッセージ

error

1local.ERROR: Debugbar exception: Attempt to read property "cookies" on null

該当のソースコード

Laravel

1<-- api.php --> 2Route::post('/{productId}/reviews', [\App\Http\Controllers\Api\V1\ReviewsController::class, 'store']); 3 4<-- Controller --> 5public function store(ReviewsRequest $request, int $productId) 6 { 7 $reviewData = $request->validatedData(); 8 $response = $this->reviewService->saveReviewByProductId($reviewData); 9 10 return response()->json($response, 201); 11 } 12 13<-- Service --> 14 public function saveReviewByProductId(array $reviewsData, $productId) 15 { 16 return $this->reviewRepository->saveReview($reviewsData, $productId); 17 } 18 19<-- Repository --> 20 public function saveReview(array $reviewData, int $productId): Review 21 { 22 return DB::transaction(function () use ($reviewData, $productId) { 23 try { 24 return $this->review::where('product_id', $productId)->create($reviewData); 25 } catch (\Exception $e) { 26 DB::rollBack(); 27 throw new \Exception("Failed to save review: " . $e->getMessage()); 28 } 29 }); 30 }

試したこと・調べたこと

上記の詳細・結果

local.ERROR: Debugbar exception: Attempt to read property "cookies" on null

上記で検索して、middlewareに問題があると認識しました。

storeメソッド内のddメソッドでrequestの値を確認しようとしましたが、dd自体が処理されていません。

補足

PHP 8.2.14
Laravel 9.52.16

パッケージ管理ツール:Composer
運用環境:Ubuntu, Docker

コンテナ:
meilisearch-1 (Exited)
mysql-1    (Running)
mailpit-1    (Running)
laravel.test-1 (Running)
redis-1    (Running)
selenium-1  (Running)
front-1    (Running)

コメントを投稿

0 コメント