Встречается на собеседованиях • сегодня
Как реализовывал защиту запросов на проекте
Использовал несколько подходов для защиты API:
- Аутентификация: JWT-токены через библиотеку PyJWT. Пример проверки токена:
python
import jwt
from functools import wraps
def token_required(f):
@wraps(f)
def decorated(*args, **kwargs):
token = request.headers.get('Authorization')
if not token:
return {'error': 'Token is missing'}, 401
try:
data = jwt.decode(token, SECRET_KEY, algorithms=['HS256'])
except:
return {'error': 'Invalid token'}, 401
return f(*args, **kwargs)
return decorated- Валидация входных данных: Pydantic для проверки запросов
python
from pydantic import BaseModel, EmailStr
class UserCreate(BaseModel):
email: EmailStr
password: str = Field(min_length=8)- Rate Limiting: Ограничение запросов через Flask-Limiter
python
from flask_limiter import Limiter
limiter = Limiter(app, key_func=get_remote_address)
@app.route("/api")
@limiter.limit("100/day")
def api():
return "OK"-
SQL Injection: Всегда использовал ORM (SQLAlchemy) или параметризованные запросы
-
CORS: Настройка через Flask-CORS только для доверенных доменов

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы