Можно ли изменить данные перед отправкой в POST-запросе?

«Можно ли изменить данные перед отправкой в POST-запросе?» — вопрос из категории API тестирование, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, конечно. Клиентское приложение часто модифицирует или форматирует данные перед отправкой POST-запроса на сервер.

Типичный сценарий (JavaScript):

// 1. Исходные данные
let userData = { name: 'alice', age: 25 };

// 2. Модификация перед отправкой
userData.name = userData.name.toUpperCase(); // Изменяем значение
userData.registeredAt = new Date().toISOString(); // Добавляем поле

// 3. Отправка POST-запроса
fetch('https://api.example.com/users', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify(userData) // Сериализация в JSON
});

Что можно делать перед отправкой?

  • Валидация и санация: Проверка формата, очистка от лишних пробелов.
  • Трансформация: Приведение к нужному формату (даты, числа).
  • Обогащение: Добавление вычисляемых полей, токенов, метаданных.
  • Шифрование/подпись: Если требуется безопасность на стороне клиента.

Важно: Сервер всегда должен проводить собственную валидацию и проверку полученных данных, не доверяя клиенту.