WebErrorStatus Перечисление
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет ошибки, возникающие во время операций с веб-службами, таких как проверка подлинности, конфигурация прокси-сервера и URI назначения.
public enum class WebErrorStatus
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
enum class WebErrorStatus
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public enum WebErrorStatus
var value = Windows.Web.WebErrorStatus.unknown
Public Enum WebErrorStatus
- Наследование
-
WebErrorStatus
- Атрибуты
Требования к Windows
Семейство устройств |
Windows 10 (появилось в 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (появилось в v1.0)
|
Поля
BadGateway | 502 | Сервер действовал в качестве шлюза или прокси-сервера и получил недопустимый ответ от сервера вышестоящий. |
BadRequest | 400 | Запрос не может быть выполнен из-за неправильного синтаксиса. |
CannotConnect | 14 | Не удается подключиться к назначению. |
CertificateCommonNameIsIncorrect | 1 | Общее имя SSL-сертификата не соответствует веб-адресу. |
CertificateContainsErrors | 3 | SSL-сертификат содержит ошибки. |
CertificateExpired | 2 | Срок действия SSL-сертификата истек. |
CertificateIsInvalid | 5 | Ssl-сертификат недопустим. |
CertificateRevoked | 4 | SSL-сертификат отозван. |
Conflict | 409 | Указывает, что не удалось обработать запрос из-за конфликта в запросе. |
ConnectionAborted | 9 | Подключение прервано. |
ConnectionReset | 10 | Подключение было сброшено. |
Disconnected | 11 | Подключение было завершено. |
ErrorHttpInvalidServerResponse | 8 | Сервер вернул недопустимый или нераспознанный ответ. |
ExpectationFailed | 417 | Сервер не может соответствовать требованиям поля "Ожидать заголовок запроса". |
Forbidden | 403 | Сервер отклонил запрос. |
Found | 302 | Ресурс найден, но доступен в расположении, отличном от того, который включен в запрос. |
GatewayTimeout | 504 | Сервер действовал в качестве шлюза или прокси-сервера и не получал своевременного ответа от сервера вышестоящий. |
Gone | 410 | Указывает, что запрошенный ресурс больше недоступен и не будет доступен снова. |
HostNameNotResolved | 15 | Не удалось разрешить предоставленное имя узла. |
HttpsToHttpOnRedirection | 13 | Перенаправлено из безопасного расположения в небезопасное. |
HttpToHttpsOnRedirection | 12 | Перенаправлено из расположения в безопасное. |
HttpVersionNotSupported | 505 | Сервер не поддерживает версию протокола HTTP, используемую в запросе. |
InsufficientRangeSupport | 22 | Запрос не поддерживает диапазон. |
InternalServerError | 500 | Универсальное сообщение об ошибке, выдаваемое, если не подходит более конкретное сообщение. |
LengthRequired | 411 | В запросе не указана длина содержимого, требуемая запрошенным ресурсом. |
MethodNotAllowed | 405 | Запрос был сделан к ресурсу с помощью метода запроса, не поддерживаемого этим ресурсом. |
MissingContentLengthSupport | 23 | В запросе неправильно указан размер файла. |
MovedPermanently | 301 | Этот и все будущие запросы должны направляться на указанный URI. |
MultipleChoices | 300 | Запрошенный URL-адрес представляет группирование высокого уровня, для которого необходимо выбрать более низкий уровень. |
NotAcceptable | 406 | Запрошенный ресурс способен создавать содержимое, недопустимое только в соответствии с заголовками Accept, отправленными в запросе. |
NotFound | 404 | Не удалось найти запрошенный ресурс, но он может быть снова доступен в будущем. |
NotImplemented | 501 | Сервер либо не распознает метод запроса, либо не может выполнить запрос. |
NotModified | 304 | Указывает, что ресурс не был изменен с момента последнего запроса. |
OperationCanceled | 16 | Операция была отменена. |
PaymentRequired | 402 | Зарезервировано. |
PreconditionFailed | 412 | Сервер не соответствует ни одному из предварительных условий, которые запрашивающий запрос помещает в запрос. |
ProxyAuthenticationRequired | 407 | Клиент должен сначала пройти проверку подлинности с помощью прокси-сервера. |
RedirectFailed | 17 | Сбой перенаправления запроса. |
RequestedRangeNotSatisfiable | 416 | Клиент запросил часть файла, но сервер не может предоставить эту часть. |
RequestEntityTooLarge | 413 | Запрос больше, чем сервер готов или может обработать. |
RequestTimeout | 408 | Истекло время ожидания запроса сервером. |
RequestUriTooLong | 414 | Указанная длина URI превышает максимальную длину, доступную серверу. |
SeeOther | 303 | Ответ на запрос можно найти в другом URI с помощью метода GET. |
ServerUnreachable | 6 | Сервер не отвечает. |
ServiceUnavailable | 503 | Сервер сейчас недоступен. |
TemporaryRedirect | 307 | Запрошенный ресурс временно находится под другим универсальным кодом ресурса (URI). |
Timeout | 7 | Истекло время ожидания подключения. |
Unauthorized | 401 | Проверка подлинности завершилась сбоем или учетные данные еще не предоставлены. |
UnexpectedClientError | 20 | Произошла непредвиденная ошибка на стороне клиента. |
UnexpectedRedirection | 19 | Запрос был неожиданно перенаправлен. |
UnexpectedServerError | 21 | Произошла непредвиденная ошибка на стороне сервера. |
UnexpectedStatusCode | 18 | Непредвиденный код состояния, указывающий на сбой. |
Unknown | 0 | Произошла неизвестная ошибка. |
UnsupportedMediaType | 415 | Сущность запроса имеет тип носителя, который не поддерживается сервером или ресурсом. |
UseProxy | 305 | Доступ к запрошенным ресурсам должен осуществляться через прокси-сервер, заданный полем Расположение. |
Комментарии
Значение WebErrorStatus возвращается Windows.Web.WebError.GetStatus, Windows.Networking.WebSocketError.GetStatus и Windows.Networking.BackgroundTransfer.GetStatus.
В этом примере показано, как использовать WebErrorStatus для отображения другого сообщения об ошибке в зависимости от типа ошибки. В этом примере значение WebErrorStatus возвращается windows.Networking.WebSocketError.GetStatus.
using Windows.Web;
using Windows.Networking.Sockets;
// Pointer back to the main page. Needed to call methods in MainPage such as NotifyUser()
MainPage rootPage = MainPage.Current;
WebErrorStatus status = WebSocketError.GetStatus(ex.GetBaseException().HResult);
if (status == WebErrorStatus.CannotConnect ||
status == WebErrorStatus.NotFound ||
status == WebErrorStatus.RequestTimeout)
{
rootPage.NotifyUser("Cannot connect to the server", NotifyType.ErrorMessage);
}
else
{
rootPage.NotifyUser("Error: " + status, NotifyType.ErrorMessage);
}
// Pointer back to the main page. Needed to call methods in MainPage such as NotifyUser().
m_rootPage = MainPage::Current();
Windows::Web::WebErrorStatus status{ Windows::Networking::Sockets::WebSocketError::GetStatus(exception.to_abi()) };
if (status == Windows::Web::WebErrorStatus::CannotConnect ||
status == Windows::Web::WebErrorStatus::NotFound ||
status == Windows::Web::WebErrorStatus::RequestTimeout)
{
m_rootPage.NotifyUser(L"Cannot connect to the server", NotifyType::ErrorMessage);
}
else
{
m_rootPage.NotifyUser(std::wstring(L"Error: ") + exception.message().c_str(), NotifyType::ErrorMessage);
}
using namespace Windows::Web;
using namespace Windows::Networking::Sockets;
// Pointer back to the main page. Needed to call methods in MainPage such as NotifyUser()
rootPage = MainPage::Current;
WebErrorStatus status = WebSocketError::GetStatus(exception->HResult);
if (status == WebErrorStatus::CannotConnect ||
status == WebErrorStatus::NotFound ||
status == WebErrorStatus::RequestTimeout)
{
rootPage->NotifyUser("Cannot connect to the server", NotifyType::ErrorMessage);
}
else
{
rootPage->NotifyUser("Error: " + status.ToString(), NotifyType::ErrorMessage);
}
Журнал версий
Версия Windows | Версия пакета SDK | Добавленная стоимость |
---|---|---|
1709 | 16299 | InsufficientRangeSupport |
1709 | 16299 | MissingContentLengthSupport |