WebErrorStatus Énumération

Définition

Définit les erreurs rencontrées lors des opérations impliquant des services web, tels que l’authentification, la configuration du proxy et les URI de destination.

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
Héritage
WebErrorStatus
Attributs

Configuration requise pour Windows

Famille d’appareils
Windows 10 (introduit dans 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v1.0)

Champs

BadGateway 502

Le serveur agissait en tant que passerelle ou proxy et a reçu une réponse non valide du serveur amont.

BadRequest 400

La demande ne peut pas être satisfaite en raison d’une syntaxe incorrecte.

CannotConnect 14

Impossible de se connecter à la destination.

CertificateCommonNameIsIncorrect 1

Le nom commun du certificat SSL ne correspond pas à l’adresse web.

CertificateContainsErrors 3

Le certificat SSL contient des erreurs.

CertificateExpired 2

Le certificat SSL a expiré.

CertificateIsInvalid 5

Le certificat SSL n’est pas valide.

CertificateRevoked 4

Le certificat SSL a été révoqué.

Conflict 409

Indique que la demande n’a pas pu être traitée en raison d’un conflit dans la demande.

ConnectionAborted 9

La connexion a été abandonnée.

ConnectionReset 10

La connexion a été réinitialisée.

Disconnected 11

La connexion a été terminée.

ErrorHttpInvalidServerResponse 8

Le serveur a retourné une réponse non valide ou non reconnue.

ExpectationFailed 417

Le serveur ne peut pas répondre aux exigences du champ Expect request-header.

Forbidden 403

Le serveur a refusé la demande.

Found 302

La ressource a été trouvée, mais elle est disponible dans un emplacement différent de celui inclus dans la demande.

GatewayTimeout 504

Le serveur agissait en tant que passerelle ou proxy et n’a pas reçu de réponse en temps opportun de la part du serveur amont.

Gone 410

Indique que la ressource demandée n’est plus disponible et ne sera plus disponible.

HostNameNotResolved 15

Impossible de résoudre le nom d’hôte fourni.

HttpsToHttpOnRedirection 13

Redirigé d’un emplacement sécurisé vers un emplacement non sécurisé.

HttpToHttpsOnRedirection 12

Redirigé d’un emplacement vers un emplacement sécurisé.

HttpVersionNotSupported 505

Le serveur ne prend pas en charge la version du protocole HTTP utilisée dans la requête.

InsufficientRangeSupport 22

La demande ne prend pas en charge la plage.

InternalServerError 500

Message d’erreur générique, donné quand aucun message plus spécifique n’est approprié.

LengthRequired 411

La demande n’a pas spécifié la longueur de son contenu, qui est requise par la ressource demandée.

MethodNotAllowed 405

Une requête a été effectuée pour une ressource à l’aide d’une méthode de requête non prise en charge par cette ressource.

MissingContentLengthSupport 23

La demande est en cours de mise en erreur de la taille du fichier.

MovedPermanently 301

Cette requête et toutes les demandes futures doivent être dirigées vers l’URI donné.

MultipleChoices 300

L’URL demandée représente un regroupement de haut niveau pour lequel des sélections de niveau inférieur doivent être effectuées.

NotAcceptable 406

La ressource demandée est uniquement capable de générer du contenu non acceptable selon les en-têtes Accepter envoyés dans la demande.

NotFound 404

La ressource demandée est introuvable, mais peut être à nouveau disponible à l’avenir.

NotImplemented 501

Le serveur ne reconnaît pas la méthode de demande ou ne peut pas répondre à la demande.

NotModified 304

Indique que la ressource n’a pas été modifiée depuis la dernière demande.

OperationCanceled 16

L'opération a été annulée.

PaymentRequired 402

Réservé.

PreconditionFailed 412

Le serveur ne satisfait pas à l’une des conditions préalables que le demandeur a mises sur la demande.

ProxyAuthenticationRequired 407

Le client doit d’abord s’authentifier auprès du proxy.

RedirectFailed 17

Échec de la redirection de la demande.

RequestedRangeNotSatisfiable 416

Le client a demandé une partie du fichier, mais le serveur ne peut pas fournir cette partie.

RequestEntityTooLarge 413

La demande est plus grande que ce que le serveur est prêt ou capable de traiter.

RequestTimeout 408

Le serveur a expiré lorsqu'il attendait la demande.

RequestUriTooLong 414

La longueur de l’URI fournie dépasse la longueur maximale que le serveur peut traiter.

SeeOther 303

La réponse à la demande se trouve sous un autre URI à l’aide d’une méthode GET.

ServerUnreachable 6

Le serveur ne répond pas.

ServiceUnavailable 503

Le serveur est actuellement indisponible.

TemporaryRedirect 307

La ressource demandée réside temporairement sous un URI différent.

Timeout 7

La connexion a expiré.

Unauthorized 401

L’authentification a échoué ou les informations d’identification n’ont pas encore été fournies.

UnexpectedClientError 20

Une erreur côté client inattendue s’est produite.

UnexpectedRedirection 19

Une requête a été redirigée de manière inattendue.

UnexpectedServerError 21

Une erreur côté serveur inattendue s’est produite.

UnexpectedStatusCode 18

Code status inattendu indiquant qu’un échec a été reçu.

Unknown 0

Une erreur inconnue s’est produite.

UnsupportedMediaType 415

L’entité de demande a un type de média que le serveur ou la ressource ne prend pas en charge.

UseProxy 305

La ressource demandée doit être accessible via le proxy fourni par le champ Emplacement.

Remarques

Une valeur WebErrorStatus est retournée par Windows.Web.WebError.GetStatus, Windows.Networking.WebSocketError.GetStatus et Windows.Networking.BackgroundTransfer.GetStatus.

Cet exemple montre comment utiliser WebErrorStatus pour afficher un message d’erreur différent en fonction du type d’erreur. Dans cet exemple, la valeur WebErrorStatus est retournée par 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);
}

Historique des versions

Version de Windows Version du SDK Valeur ajoutée
1709 16299 InsufficientRangeSupport
1709 16299 MissingContentLengthSupport

S’applique à

Voir aussi