私のウェブルートは機能していますが、APIルートにはPOSTできません。MethodNotAllowedHttpException
が届きます。私はGETが動作するので、これはcsrfトークンの問題だと思いますが、それを修正する方法を理解することはできません。 apiリクエストをシミュレートするためにPostmanを使用しています。Laravel 5.4 APIルート
auth.php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'devices',
],
],
RouteServiceProvider.php
protected function mapApiRoutes()
{
Route::middleware('api')
->namespace($this->namespace)
->group(base_path('routes/api.php'));
}
ルート/ api.php
Route::post('api', ['uses' => '[email protected]']);
kernel.php
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
'api' => [
'throttle:60,1',
'auth:api',
'bindings',
],
];
これは動作していた古いバージョンのLaravelからのアップグレードです。新しいバージョンのLaravel 5.4をインストールしてアップグレードし、コードをコピーして必要に応じて変更しました。
どこからどのように電話していますか?もしajaxからそのコードを共有すれば? –
@ detective404私は郵便配達員を使って電話をしています。私はPOSTリクエストでwww.mydomain.com/apiを呼び出しています – meeeee
こんにちは@meeeeeこの問題の解決策を見つけましたか?私は似たような問題を抱えています。 –