diff --git a/www/idp/index.php b/www/idp/index.php index b094054..2b9a2eb 100644 --- a/www/idp/index.php +++ b/www/idp/index.php @@ -16,6 +16,7 @@ use Pdsinterop\PhpSolid\JtiStore; $request = explode("?", $_SERVER['REQUEST_URI'], 2)[0]; +$request = rtrim($request, '/'); $method = $_SERVER['REQUEST_METHOD']; Middleware::cors(); @@ -24,54 +25,40 @@ case "GET": switch ($request) { case "/jwks": - case "/jwks/": SolidIdp::respondToJwks(); break; case "/.well-known/openid-configuration": SolidIdp::respondToWellKnownOpenIdConfiguration(); break; case "/authorize": - case "/authorize/": Account::requireLoggedInUser(); SolidIdp::respondToAuthorize(); break; case "/dashboard": - case "/dashboard/": Account::requireLoggedInUser(); Account::respondToDashboard(); break; case "/logout": - case "/logout/": Account::respondToLogout(); break; case "/login/password": - case "/login/password/": header("Location: /dashboard/"); break; - case "/": + case "": case "/login": - case "/login/": case "/register": - case "/register/": case "/reset-password": - case "/reset-password/": case "/change-password": - case "/change-password/": case "/account/delete": - case "/account/delete/": case "/account/delete/confirm": - case "/account/delete/confirm/": include_once(FRONTENDDIR . "generated.html"); break; case "/sharing": - case "/sharing/": Account::requireLoggedInUser(); include_once(FRONTENDDIR . "generated.html"); break; case '/session': - case '/session/': case '/userinfo': - case '/userinfo/': header("HTTP/1.1 501 Not implemented"); break; default: @@ -82,43 +69,33 @@ case "POST": switch ($request) { case "/api/accounts/verify": - case "/api/accounts/verify/": Account::respondToAccountVerify(); break; case "/api/accounts/new": - case "/api/accounts/new/": Account::respondToAccountNew(); break; case "/api/accounts/reset-password": - case "/api/accounts/reset-password/": Account::respondToAccountResetPassword(); break; case "/api/accounts/change-password": - case "/api/accounts/change-password/": Account::respondToAccountChangePassword(); break; case "/api/accounts/delete": - case "/api/accounts/delete/": Account::respondToAccountDelete(); break; case "/api/accounts/delete/confirm": - case "/api/accounts/delete/confirm/": Account::respondToAccountDeleteConfirm(); break; case "/login/password": - case "/login/password/": Account::respondToLogin(); break; case "/register": - case "/register/": SolidIdp::respondToRegister(); break; case "/api/sharing": - case "/api/sharing/": SolidIdp::respondToSharing(); break; case "/token": - case "/token/": SolidIdp::respondToToken(); break; default: diff --git a/www/storage/index.php b/www/storage/index.php index 679056b..af016a4 100644 --- a/www/storage/index.php +++ b/www/storage/index.php @@ -11,6 +11,7 @@ use Pdsinterop\PhpSolid\Routes\SolidStorageProvider; $request = explode("?", $_SERVER['REQUEST_URI'], 2)[0]; +$request = rtrim($request, '/'); $method = $_SERVER['REQUEST_METHOD']; Middleware::cors(); @@ -26,11 +27,9 @@ case "POST": switch ($request) { case "/api/storage": - case "/api/storage/": SolidStorageProvider::respondToStorageNew(); break; case "/api/podcount": - case "/api/podcount/": SolidStorageProvider::respondToPodCount(); break; default: