Возврат HTTP 403.7 HTTPResponseMessage - PullRequest
0 голосов
/ 26 ноября 2018

Если вы реализуете свой собственный AuthorizeAttribute и переопределяете HandleUnauthorizedRequest, вы устанавливаете HttpActionContext.Response в HttpResponseMessage.

Конструктор HttpResponseMessage принимает экземпляр перечисления аргумента HttpStatusCode * HttpStatusCode.1004 * Это перечисление содержит значения для общих HTTP-кодов верхнего уровня:

  • HttpStatusCode.OK = 200
  • HttpStatusCode.NotFound = 404
  • И т. Д.

Существует значение HttpStatusCode.Forbidden = 403. Но нет значения для 403.7 - Требуется сертификат клиента.Или, в этом отношении, для любого из других субкодов.

Как вы возвращаете ошибку субкода?

1 Ответ

0 голосов
/ 06 декабря 2018

Существует причина, по которой вы не можете установить HttpActionContext.Response на ошибку подкода.

Подкоды не возвращаются в ответе.Протокол HTTP не поддерживает их.

Код на сервере может возвращать ошибки субкода, а код на сервере может использовать субкоды для регистрации, обработки ошибок и т. Д. Возвращение 404.7 может вернутьстраница, отличная от 404.6.

Но код, отправленный клиенту, будет простым 404, независимо от того.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...