У меня большая среда балансировки нагрузки F5 LTM, которую я ищу, и которую мы настраиваем для ограничения скорости запросов на уровне URI. Для пользователей веб-сайтов мы выкладываем их на занятую страницу, но мы также запускаем веб-сервисы и должны вежливо сказать, чтобы мыльный клиент продолжал и продолжал производить потомство. Не зная целую кучу ответов SOAP/XML, мне не ясно, что мы должны сказать клиенту. Достаточно ли будет простого базового ответа 500 или нам нужно также выработать законный ответ SOAP?

1 ответ1

3

Ответ SOAP определяется определением службы (т. Е. WSDL) за пределами того, что обычно используют соответствующие коды ответа HTTP для обстоятельств вне "контракта".

Вместо того, чтобы лениться и использовать 500, я бы выбрал из:

  • 409 конфликт
  • 410 ушел
  • 417 Ожидание не удалось
  • 429 Слишком много запросов
  • 501 не реализовано
  • сервис 503 недоступен
  • 509 Превышен предел пропускной способности
  • 507 Недостаточно памяти

Просмотрите полный список и выберите наиболее подходящий.

Если сервер способен вернуть XML-документ с подробным описанием ошибки, это нормально. Сервисы SOAP, которые я использую, учитывают это в определениях сервисов.

Клиент должен быть в состоянии справиться с неукрашенными ошибками HTTP, поскольку иногда происходит сбой сервера до того, как XML-запрос даже будет проанализирован.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .