Fixed issue with LV 5.6 upgrade
get current route uri was broken for global middlewares, thus CORS middleware got broken Change-Id: Iaf7a244e67afd8b0f007364f18e5de1ba5af64f1
This commit is contained in:
parent
609ec9c7ce
commit
2d3d20152a
@ -1,20 +1,18 @@
|
|||||||
<?php namespace libs\utils;
|
<?php namespace libs\utils;
|
||||||
/**
|
/**
|
||||||
* Copyright 2015 OpenStack Foundation
|
* Copyright 2015 OpenStack Foundation
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
**/
|
**/
|
||||||
|
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class RequestUtils
|
* Class RequestUtils
|
||||||
* @package libs\utils
|
* @package libs\utils
|
||||||
@ -22,23 +20,26 @@ use Illuminate\Support\Facades\Log;
|
|||||||
final class RequestUtils {
|
final class RequestUtils {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
* @return bool|string
|
* @return bool|string
|
||||||
*/
|
*/
|
||||||
public static function getCurrentRoutePath()
|
public static function getCurrentRoutePath($request)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
$route_path = Route::getCurrentRoute()->uri();
|
$route = Route::getRoutes()->match($request);
|
||||||
|
if(is_null($route)) return false;
|
||||||
|
$route_path = $route->uri();
|
||||||
if (strpos($route_path, '/') != 0)
|
if (strpos($route_path, '/') != 0)
|
||||||
$route_path = '/' . $route_path;
|
$route_path = '/' . $route_path;
|
||||||
|
|
||||||
return $route_path;
|
return $route_path;
|
||||||
}
|
}
|
||||||
catch (\Exception $ex)
|
catch (\Exception $ex)
|
||||||
{
|
{
|
||||||
Log::error($ex);
|
Log::error($ex);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -157,7 +157,7 @@ class CORSMiddleware
|
|||||||
$real_method = $request->headers->get('Access-Control-Request-Method');
|
$real_method = $request->headers->get('Access-Control-Request-Method');
|
||||||
$request->setMethod($real_method);
|
$request->setMethod($real_method);
|
||||||
|
|
||||||
$route_path = RequestUtils::getCurrentRoutePath();
|
$route_path = RequestUtils::getCurrentRoutePath($request);
|
||||||
if (!$route_path || !$this->checkEndPoint($route_path, $real_method))
|
if (!$route_path || !$this->checkEndPoint($route_path, $real_method))
|
||||||
{
|
{
|
||||||
$response = new Response();
|
$response = new Response();
|
||||||
|
@ -86,7 +86,7 @@ class OAuth2BearerAccessTokenRequestValidator
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
$route = RequestUtils::getCurrentRoutePath();
|
$route = RequestUtils::getCurrentRoutePath($request);
|
||||||
if (!$route) {
|
if (!$route) {
|
||||||
throw new OAuth2ResourceServerException(
|
throw new OAuth2ResourceServerException(
|
||||||
400,
|
400,
|
||||||
|
@ -62,7 +62,7 @@ final class RateLimitMiddleware extends ThrottleRequests
|
|||||||
*/
|
*/
|
||||||
public function handle($request, Closure $next, $max_attempts = 0, $decay_minutes = 0)
|
public function handle($request, Closure $next, $max_attempts = 0, $decay_minutes = 0)
|
||||||
{
|
{
|
||||||
$route = RequestUtils::getCurrentRoutePath();
|
$route = RequestUtils::getCurrentRoutePath($request);
|
||||||
$method = $request->getMethod();
|
$method = $request->getMethod();
|
||||||
$endpoint = $this->endpoint_repository->getApiEndpointByUrlAndMethod($route, $method);
|
$endpoint = $this->endpoint_repository->getApiEndpointByUrlAndMethod($route, $method);
|
||||||
$key = $this->resolveRequestSignature($request);
|
$key = $this->resolveRequestSignature($request);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user