Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException {#673 -statusCode: 405 -headers: array:1 [ "Allow" => "OPTIONS" ] }
* * @throws \Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException */ protected function requestMethodNotAllowed($request, array $others, $method) { throw new MethodNotAllowedHttpException( $others, sprintf( 'The %s method is not supported for route %s. Supported methods: %s.', $method, $request->path(), return (new Route('OPTIONS', $request->path(), function () use ($methods) { return new Response('', 200, ['Allow' => implode(',', $methods)]); }))->bind($request); } $this->requestMethodNotAllowed($request, $methods, $request->method()); } /** * Throw a method not allowed HTTP exception. * // another HTTP verb. If it is we will need to throw a MethodNotAllowed and // inform the user agent of which HTTP verb it should use for this route. $others = $this->checkForAlternateVerbs($request); if (count($others) > 0) { return $this->getRouteForMethods($request, $others); } throw new NotFoundHttpException(sprintf( 'The route %s could not be found.', $request->path() // First, we will see if we can find a matching route for this current request // method. If we can, great, we can just return it so that it can be called // by the consumer. Otherwise we will check for routes with another verb. $route = $this->matchAgainstRoutes($routes, $request); return $this->handleMatchedRoute($request, $route); } /** * Get routes from the collection by method. * */ protected function findRoute($request) { $this->events->dispatch(new Routing($request)); $this->current = $route = $this->routes->match($request); $route->setContainer($this->container); $this->container->instance(Route::class, $route); * @param \Illuminate\Http\Request $request * @return \Symfony\Component\HttpFoundation\Response */ public function dispatchToRoute(Request $request) { return $this->runRoute($request, $this->findRoute($request)); } /** * Find the route matching a given request. * */ public function dispatch(Request $request) { $this->currentRequest = $request; return $this->dispatchToRoute($request); } /** * Dispatch the request to a route and return the response. * protected function dispatchToRouter() { return function ($request) { $this->app->instance('request', $request); return $this->router->dispatch($request); }; } /** * Call the terminate method on any terminable middleware. */ protected function prepareDestination(Closure $destination) { return function ($passable) use ($destination) { try { return $destination($passable); } catch (Throwable $e) { return $this->handleException($passable, $e); } }; } * - media : self + blob (webcam stream) * - workers : self + blob (TF.js WebWorkers) */ public function handle(Request $request, Closure $next) { $response = $next($request); if (!method_exists($response, 'header')) { return $response; } // since the object we're given was already a fully instantiated object. $parameters = [$passable, $stack]; } $carry = method_exists($pipe, $this->method) ? $pipe->{$this->method}(...$parameters) : $pipe(...$parameters); return $this->handleCarry($carry); } catch (Throwable $e) { return $this->handleException($passable, $e); */ public function handle($request, Closure $next) { $this->clean($request); return $next($request); } /** * Clean the request's data. * if ($callback($request)) { return $next($request); } } return parent::handle($request, $next); } /** * Transform the given value. * // since the object we're given was already a fully instantiated object. $parameters = [$passable, $stack]; } $carry = method_exists($pipe, $this->method) ? $pipe->{$this->method}(...$parameters) : $pipe(...$parameters); return $this->handleCarry($carry); } catch (Throwable $e) { return $this->handleException($passable, $e); */ public function handle($request, Closure $next) { $this->clean($request); return $next($request); } /** * Clean the request's data. * if ($callback($request)) { return $next($request); } } return parent::handle($request, $next); } /** * Transform the given value. * // since the object we're given was already a fully instantiated object. $parameters = [$passable, $stack]; } $carry = method_exists($pipe, $this->method) ? $pipe->{$this->method}(...$parameters) : $pipe(...$parameters); return $this->handleCarry($carry); } catch (Throwable $e) { return $this->handleException($passable, $e); if ($max > 0 && $request->server('CONTENT_LENGTH') > $max) { throw new PostTooLargeException; } return $next($request); } /** * Determine the server 'post_max_size' as bytes. * // since the object we're given was already a fully instantiated object. $parameters = [$passable, $stack]; } $carry = method_exists($pipe, $this->method) ? $pipe->{$this->method}(...$parameters) : $pipe(...$parameters); return $this->handleCarry($carry); } catch (Throwable $e) { return $this->handleException($passable, $e); null, $this->getHeaders($data) ); } return $next($request); } /** * Determine if the incoming request has a maintenance mode bypass cookie. * // since the object we're given was already a fully instantiated object. $parameters = [$passable, $stack]; } $carry = method_exists($pipe, $this->method) ? $pipe->{$this->method}(...$parameters) : $pipe(...$parameters); return $this->handleCarry($carry); } catch (Throwable $e) { return $this->handleException($passable, $e); $res = response('', Response::HTTP_NO_CONTENT); $res->headers->set('Content-Type', 'application/json; charset=UTF-8'); return $this->withCorsHeaders($res); } $response = $next($request); // 1. Aseguramos que TODAS las respuestas lleven CORS primero, pase lo que pase $response = $this->withCorsHeaders($response); // 2. Luego forzamos el JSON si aplica // since the object we're given was already a fully instantiated object. $parameters = [$passable, $stack]; } $carry = method_exists($pipe, $this->method) ? $pipe->{$this->method}(...$parameters) : $pipe(...$parameters); return $this->handleCarry($carry); } catch (Throwable $e) { return $this->handleException($passable, $e); * @return \Illuminate\Http\Response */ public function handle($request, Closure $next) { if (! $this->hasMatchingPath($request)) { return $next($request); } $this->cors->setOptions($this->container['config']->get('cors', [])); if ($this->cors->isPreflightRequest($request)) { // since the object we're given was already a fully instantiated object. $parameters = [$passable, $stack]; } $carry = method_exists($pipe, $this->method) ? $pipe->{$this->method}(...$parameters) : $pipe(...$parameters); return $this->handleCarry($carry); } catch (Throwable $e) { return $this->handleException($passable, $e); { $request::setTrustedProxies([], $this->getTrustedHeaderNames()); $this->setTrustedProxyIpAddresses($request); return $next($request); } /** * Sets the trusted proxies on the request. * // since the object we're given was already a fully instantiated object. $parameters = [$passable, $stack]; } $carry = method_exists($pipe, $this->method) ? $pipe->{$this->method}(...$parameters) : $pipe(...$parameters); return $this->handleCarry($carry); } catch (Throwable $e) { return $this->handleException($passable, $e); if (isset($user->_id) && !isset($user->id)) { $user->id = $user->_id; } } return $next($request); }} // since the object we're given was already a fully instantiated object. $parameters = [$passable, $stack]; } $carry = method_exists($pipe, $this->method) ? $pipe->{$this->method}(...$parameters) : $pipe(...$parameters); return $this->handleCarry($carry); } catch (Throwable $e) { return $this->handleException($passable, $e); { $pipeline = array_reduce( array_reverse($this->pipes()), $this->carry(), $this->prepareDestination($destination) ); return $pipeline($this->passable); } /** * Run the pipeline and return the result. * $this->bootstrap(); return (new Pipeline($this->app)) ->send($request) ->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware) ->then($this->dispatchToRouter()); } /** * Bootstrap the application for HTTP requests. * $this->requestStartedAt = Carbon::now(); try { $request->enableHttpMethodParameterOverride(); $response = $this->sendRequestThroughRouter($request); } catch (Throwable $e) { $this->reportException($e); $response = $this->renderException($request, $e); }$app = require_once __DIR__.'/../bootstrap/app.php';$kernel = $app->make(Kernel::class);$response = $kernel->handle( $request = Request::capture())->send();$kernel->terminate($request, $response);// application without having installed a "real" web server software here.if ($uri !== '/' && file_exists($publicPath.$uri)) { return false;}require_once $publicPath.'/index.php';|
MethodNotAllowedHttpException
|
|---|
Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException:
The GET method is not supported for route /. Supported methods: OPTIONS.
at /var/www/vendor/laravel/framework/src/Illuminate/Routing/AbstractRouteCollection.php:122
at Illuminate\Routing\AbstractRouteCollection->requestMethodNotAllowed(object(Request), array('OPTIONS'), 'GET')
(/var/www/vendor/laravel/framework/src/Illuminate/Routing/AbstractRouteCollection.php:107)
at Illuminate\Routing\AbstractRouteCollection->getRouteForMethods(object(Request), array('OPTIONS'))
(/var/www/vendor/laravel/framework/src/Illuminate/Routing/AbstractRouteCollection.php:41)
at Illuminate\Routing\AbstractRouteCollection->handleMatchedRoute(object(Request), null)
(/var/www/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php:162)
at Illuminate\Routing\RouteCollection->match(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Routing/Router.php:753)
at Illuminate\Routing\Router->findRoute(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Routing/Router.php:740)
at Illuminate\Routing\Router->dispatchToRoute(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Routing/Router.php:729)
at Illuminate\Routing\Router->dispatch(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:190)
at Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:141)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/app/Http/Middleware/ContentSecurityPolicy.php:28)
at App\Http\Middleware\ContentSecurityPolicy->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21)
at Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php:31)
at Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21)
at Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php:40)
at Illuminate\Foundation\Http\Middleware\TrimStrings->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27)
at Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php:86)
at Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/app/Http/Middleware/Cors.php:19)
at App\Http\Middleware\Cors->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php:49)
at Illuminate\Http\Middleware\HandleCors->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php:39)
at Illuminate\Http\Middleware\TrustProxies->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/app/Http/Middleware/NormalizeGenericUser.php:25)
at App\Http\Middleware\NormalizeGenericUser->handle(object(Request), object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180)
at Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:116)
at Illuminate\Pipeline\Pipeline->then(object(Closure))
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:165)
at Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(object(Request))
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:134)
at Illuminate\Foundation\Http\Kernel->handle(object(Request))
(/var/www/public_html/index.php:80)
at require_once('/var/www/public_html/index.php')
(/var/www/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php:16)
|