ホームページ >バックエンド開発 >PHPチュートリアル >**FormData を使用した PATCH および PUT リクエストが Laravel で失敗するのはなぜですか?**
Laravel の FormData を使用した HTTP PATCH および PUT リクエスト
Laravel RESTful アプリケーションでは、PATCH および PUT リクエストの取得に失敗することがよくあります。 form-data を使用して Postman から送信されたデータ。
問題
form-data を使用すると、$request->all() メソッドは空の配列を返します。 PATCH および PUT リクエストの場合。これにより、バックエンドが予期されたパラメーターを受信できなくなります。
解決策
この問題を解決するには、PUT または PATCH リクエストを POST リクエストに変換することで回避策が採用されます。 Postman:
Postman でリクエスト タイプを変更すると、データは POST リクエストとして正常に送信されます。 PATCH または PUT リクエストとしてルーティングされています。
例
フォームデータ経由で送信されたデータを含む POST リクエストの場合:
Route::post('testimonials/{testimonial}', 'TestimonialController@update');
Postman のフォームデータで PATCH または PUT を使用する場合:
// Request will be received as a POST request Route::patch('testimonials/{testimonial}', 'TestimonialController@update'); Route::put('testimonials/{testimonial}', 'TestimonialController@update');
注:
この回避策は RESTful 原則に準拠していない可能性があります。 POST へのリクエスト タイプ。ただし、PATCH リクエストと PUT リクエストを使用してフォームデータを介してデータを転送するための機能的なソリューションを提供します。
以上が**FormData を使用した PATCH および PUT リクエストが Laravel で失敗するのはなぜですか?**の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。