← Назад к вопросам

Что такое статус-код 405?

1.0 Junior🔥 201 комментариев
#Веб-тестирование#Тестирование API

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI26 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

HTTP статус-код 405: Method Not Allowed

HTTP 405 (Method Not Allowed) — это статус-код ошибки, который сервер возвращает, когда клиент отправляет запрос с HTTP методом, который не поддерживается для данного ресурса. Это частая ошибка при тестировании API, и инженер должен чётко понимать её значение.

Описание и причины возникновения

Код 405 означает, что сервер получил корректный запрос на существующий ресурс, но использованный HTTP метод недопустимый для этого ресурса. Причины:

  • Неправильный HTTP метод — например, попытка выполнить PUT на ресурс, который поддерживает только GET
  • Методологические ограничения — некоторые эндпоинты могут быть специально ограничены для определённых методов
  • Permissions и authentication — иногда ограничение связано с правами доступа пользователя

Примеры использования в QA тестировании

Сценарий 1: Попытка обновить ресурс с GET методом

  • GET /api/v1/users/123 → 200 OK (работает)
  • POST /api/v1/users/123 → 405 Method Not Allowed (метод не поддерживается)

Сценарий 2: Создание элемента

  • POST /api/v1/products → 201 Created (работает)
  • DELETE /api/v1/products → 405 Method Not Allowed (нельзя удалить всю коллекцию)

Отличие от других кодов

  • 400 Bad Request — ошибка в формате запроса или параметрах
  • 401 Unauthorized — требуется аутентификация
  • 403 Forbidden — аутентификация пройдена, но нет прав доступа
  • 404 Not Found — ресурс не существует
  • 405 Method Not Allowed — ресурс существует, но метод не поддерживается

Роль в QA и автоматизации

Тестировщик должен:

  • Проверять все HTTP методы для каждого эндпоинта и ожидаемые коды
  • Тестировать граничные случаи — попытки использовать недокументированные методы
  • Проверять корректность ошибок — сервер должен вернуть 405, а не 404
  • Включать проверку в regression-тесты — изменения в API могут привести к неожиданным 405

Практический пример

При тестировании API проверяем, что для некорректного метода возвращается именно 405, а не другой код ошибки. Это гарантирует, что клиентское приложение сможет правильно обработать ошибку и вывести корректное сообщение пользователю.

Статус-код 405 — это важный индикатор проблем с использованием API, и его правильное тестирование гарантирует корректное взаимодействие клиента с сервером.