Как валидировать данные в API?

Middle
290 просмотров
AFK Offer AI

Pydantic — стандарт для FastAPI. class CreateUser(BaseModel): email: EmailStr; age: int = Field(ge=0, le=150). Автоматическая валидация при десериализации. Кастомные валидаторы: @field_validator("email") — проверка значения. @model_validator — cross-field validation. В Django REST: serializers.Serializer с validate_() и validate(). Marshmallow — для Flask. cerberus, voluptuous — альтернативы. JSON Schema: jsonschema библиотека. Query params: Query(ge=1, le=100). Path params: Path(gt=0). Валидация на уровне API — первая линия обороны, не заменяет DB constraints.

Следующий вопрос

Что такое регуляризация L1 и L2?