0

外部アプリケーションをサポートする API を構築しています。問題なくいくつかのルートを追加しましたが、突然、新しいルート ( ) を追加すると、POST リクエストでacars/delayヒットしようとすると 404 エラーが発生します。http://myurl.dev/api/acars/delayこれが私のapi.phpファイルです:

Route::post('acars/deactivate', 'API\AcarsController@deactivate');

Route::post('acars/ofp', 'API\AcarsController@ofp');

Route::post('acars/create', 'API\AcarsController@create');

Route::post('acars/pirep', 'API\AcarsController@pirep');

Route::post('acars/mx', 'API\AcarsController@mx');

Route::post('acars/delay', 'API\AcarsController@delay'); // <-- THIS IS THE BROKEN ROUTE

コントローラーの方法:

public function delay(Request $request) {
    $acars = AcarsFlight::findOrFail($request->acars_flight_id);
    $delay = AcarsDelay::create([
        ...
    ]);
    return $delay;
}

他のルートは正常に機能しacars/delayますが、毎回 Postman で 404 を返します。私のphp artisan route:list出力は次のようになります。

php artisan route:list の出力

競合を引き起こすワイルドカードはありません。ルートキャッシュを何度もクリアしたり、サーバーを再起動したりしました。また、壊れたルートをapi.phpファイル内の別の位置に移動しようとしましたが、うまくいきませんでした。私が思いつく唯一のことは、最近アプリケーションを Laravel 6 から 8 にアップグレードしたということです。v7 と v8 のアップグレード ガイドを読んだところ、v7 を開始する際に一意のルート名が必要であることがわかりました。私は会ったと信じています。正しい URL を使用していることを約 1,000 回検証しました。URL をコピーしてブラウザーに貼り付けると、予想さ405れるエラーが発生します。

4

1 に答える 1