Таска 3: разделение кастомных эксепшенов #2

Open
skvachuk wants to merge 5 commits from feature/3 into develop
3 changed files with 11 additions and 2 deletions
Showing only changes of commit a1b41e8317 - Show all commits

View File

@@ -7,3 +7,4 @@ from src.application.domain.exceptions.conflict_exception import ConflictExcepti
from src.application.domain.exceptions.internal_exception import InternalException
from src.application.domain.exceptions.service_unavailable_exception import ServiceUnavailableException
from src.application.domain.exceptions.too_many_requests_exception import TooManyRequestsException
from src.application.domain.exceptions.csrf_error_exception import CsrfErrorException

View File

@@ -0,0 +1,8 @@
from src.application.domain.exceptions.application_exceptions import ApplicationException
from typing import Mapping
class CsrfErrorException(ApplicationException):
def __init__(self, message: str = 'CSRF context is invalid', headers: Mapping[str, str] | None = None):
super().__init__(500, message, headers)

View File

@@ -3,7 +3,7 @@ import inspect
from functools import wraps
from typing import Callable, Awaitable, Any, Optional, Annotated
from fastapi import Request, Header
from src.application.domain.exceptions import InternalException
from src.application.domain.exceptions import CsrfErrorException
from src.infrastructure.security import CsrfService
@@ -39,7 +39,7 @@ def csrf_protect(
break
if request is None:
raise InternalException(message='Request is required for CSRF protection')
raise CsrfErrorException(message='Request is required for CSRF protection')

Лучше что-то более конкретное. По валидации не был получен объект Request, значит что-то связанное с некорректным формированием запроса, либо CsrfErrorException - если более общий вариант

Лучше что-то более конкретное. По валидации не был получен объект Request, значит что-то связанное с некорректным формированием запроса, либо CsrfErrorException - если более общий вариант
csrf = CsrfService()