Implement logout route

This commit is contained in:
François Voron
2020-02-03 10:12:33 +01:00
parent 0fdd0fd070
commit 05b1df9a16
13 changed files with 238 additions and 0 deletions

View File

@@ -28,3 +28,6 @@ class BaseAuthentication:
async def get_login_response(self, user: BaseUserDB, response: Response) -> Any:
raise NotImplementedError()
async def get_logout_response(self, user: BaseUserDB, response: Response) -> Any:
raise NotImplementedError()

View File

@@ -67,5 +67,10 @@ class CookieAuthentication(JWTAuthentication):
# so that FastAPI can terminate it properly
return None
async def get_logout_response(self, user: BaseUserDB, response: Response) -> Any:
response.delete_cookie(
self.cookie_name, path=self.cookie_path, domain=self.cookie_domain
)
async def _retrieve_token(self, request: Request) -> Optional[str]:
return await self.api_key_cookie.__call__(request)