@@ -8302,6 +8302,34 @@ public function process(ServerRequestInterface $request, RequestHandlerInterface
83028302 }
83038303}
83048304
8305+ // file: src/Tqdev/PhpCrudApi/Middleware/SslRedirectMiddleware.php
8306+ namespace Tqdev \PhpCrudApi \Middleware {
8307+
8308+ use Psr \Http \Message \ResponseInterface ;
8309+ use Psr \Http \Message \ServerRequestInterface ;
8310+ use Psr \Http \Server \RequestHandlerInterface ;
8311+ use Tqdev \PhpCrudApi \Middleware \Base \Middleware ;
8312+ use Tqdev \PhpCrudApi \ResponseFactory ;
8313+
8314+ class SslRedirectMiddleware extends Middleware
8315+ {
8316+ public function process (ServerRequestInterface $ request , RequestHandlerInterface $ next ): ResponseInterface
8317+ {
8318+ $ uri = $ request ->getUri ();
8319+ $ scheme = $ uri ->getScheme ();
8320+ if ($ scheme == 'http ' ) {
8321+ $ uri = $ request ->getUri ();
8322+ $ uri = $ uri ->withScheme ('https ' );
8323+ $ response = ResponseFactory::fromStatus (301 );
8324+ $ response = $ response ->withHeader ('Location ' , $ uri ->__toString ());
8325+ } else {
8326+ $ response = $ next ->handle ($ request );
8327+ }
8328+ return $ response ;
8329+ }
8330+ }
8331+ }
8332+
83058333// file: src/Tqdev/PhpCrudApi/Middleware/ValidationMiddleware.php
83068334namespace Tqdev \PhpCrudApi \Middleware {
83078335
@@ -10545,13 +10573,14 @@ private function setHabtmValues(ReflectedTable $t1, ReflectedTable $t2, array &$
1054510573 use Tqdev \PhpCrudApi \Middleware \IpAddressMiddleware ;
1054610574 use Tqdev \PhpCrudApi \Middleware \JoinLimitsMiddleware ;
1054710575 use Tqdev \PhpCrudApi \Middleware \JwtAuthMiddleware ;
10548- use Tqdev \PhpCrudApi \Middleware \XmlMiddleware ;
1054910576 use Tqdev \PhpCrudApi \Middleware \MultiTenancyMiddleware ;
1055010577 use Tqdev \PhpCrudApi \Middleware \PageLimitsMiddleware ;
1055110578 use Tqdev \PhpCrudApi \Middleware \ReconnectMiddleware ;
1055210579 use Tqdev \PhpCrudApi \Middleware \Router \SimpleRouter ;
1055310580 use Tqdev \PhpCrudApi \Middleware \SanitationMiddleware ;
10581+ use Tqdev \PhpCrudApi \Middleware \SslRedirectMiddleware ;
1055410582 use Tqdev \PhpCrudApi \Middleware \ValidationMiddleware ;
10583+ use Tqdev \PhpCrudApi \Middleware \XmlMiddleware ;
1055510584 use Tqdev \PhpCrudApi \Middleware \XsrfMiddleware ;
1055610585 use Tqdev \PhpCrudApi \OpenApi \OpenApiService ;
1055710586 use Tqdev \PhpCrudApi \Record \ErrorCode ;
@@ -10582,6 +10611,9 @@ public function __construct(Config $config)
1058210611 $ router = new SimpleRouter ($ config ->getBasePath (), $ responder , $ cache , $ config ->getCacheTime (), $ config ->getDebug ());
1058310612 foreach ($ config ->getMiddlewares () as $ middleware => $ properties ) {
1058410613 switch ($ middleware ) {
10614+ case 'sslRedirect ' :
10615+ new SslRedirectMiddleware ($ router , $ responder , $ properties );
10616+ break ;
1058510617 case 'cors ' :
1058610618 new CorsMiddleware ($ router , $ responder , $ properties );
1058710619 break ;
0 commit comments