mirror of
https://github.com/flarum/core.git
synced 2025-10-12 07:24:27 +02:00
Update Stratigility, use http-interop middleware
This commit is contained in:
@@ -11,18 +11,15 @@
|
||||
|
||||
namespace Flarum\Api\Middleware;
|
||||
|
||||
use Psr\Http\Message\ResponseInterface as Response;
|
||||
use Interop\Http\ServerMiddleware\DelegateInterface;
|
||||
use Interop\Http\ServerMiddleware\MiddlewareInterface;
|
||||
use Psr\Http\Message\ServerRequestInterface as Request;
|
||||
use Zend\Stratigility\MiddlewareInterface;
|
||||
|
||||
class FakeHttpMethods implements MiddlewareInterface
|
||||
{
|
||||
const HEADER_NAME = 'x-http-method-override';
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function __invoke(Request $request, Response $response, callable $out = null)
|
||||
public function process(Request $request, DelegateInterface $delegate)
|
||||
{
|
||||
if ($request->getMethod() === 'POST' && $request->hasHeader(self::HEADER_NAME)) {
|
||||
$fakeMethod = $request->getHeaderLine(self::HEADER_NAME);
|
||||
@@ -30,6 +27,6 @@ class FakeHttpMethods implements MiddlewareInterface
|
||||
$request = $request->withMethod(strtoupper($fakeMethod));
|
||||
}
|
||||
|
||||
return $out ? $out($request, $response) : $response;
|
||||
return $delegate->process($request);
|
||||
}
|
||||
}
|
||||
|
@@ -13,10 +13,12 @@ namespace Flarum\Api\Middleware;
|
||||
|
||||
use Exception;
|
||||
use Flarum\Api\ErrorHandler;
|
||||
use Interop\Http\ServerMiddleware\DelegateInterface;
|
||||
use Interop\Http\ServerMiddleware\MiddlewareInterface;
|
||||
use Psr\Http\Message\ResponseInterface as Response;
|
||||
use Psr\Http\Message\ServerRequestInterface as Request;
|
||||
|
||||
class HandleErrors
|
||||
class HandleErrors implements MiddlewareInterface
|
||||
{
|
||||
/**
|
||||
* @var ErrorHandler
|
||||
@@ -35,14 +37,13 @@ class HandleErrors
|
||||
* Catch all errors that happen during further middleware execution.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param Response $response
|
||||
* @param callable $out
|
||||
* @param DelegateInterface $delegate
|
||||
* @return Response
|
||||
*/
|
||||
public function __invoke(Request $request, Response $response, callable $out = null)
|
||||
public function process(Request $request, DelegateInterface $delegate)
|
||||
{
|
||||
try {
|
||||
return $out($request, $response);
|
||||
return $delegate->process($request);
|
||||
} catch (Exception $e) {
|
||||
return $this->errorHandler->handle($e);
|
||||
}
|
||||
|
Reference in New Issue
Block a user