IHttpFilter.SendRequestAsync(HttpRequestMessage) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Envoyez une requête HTTP sur le instance IHttpFilter en tant qu’opération asynchrone.
public:
IAsyncOperationWithProgress<HttpResponseMessage ^, HttpProgress> ^ SendRequestAsync(HttpRequestMessage ^ request);
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<HttpResponseMessage, HttpProgress> SendRequestAsync(HttpRequestMessage const& request);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<HttpResponseMessage,HttpProgress> SendRequestAsync(HttpRequestMessage request);
function sendRequestAsync(request)
Public Function SendRequestAsync (request As HttpRequestMessage) As IAsyncOperationWithProgress(Of HttpResponseMessage, HttpProgress)
Paramètres
- request
- HttpRequestMessage
Message de la requête HTTP à envoyer.
Retours
Objet représentant l’opération asynchrone.
- Attributs
Remarques
Les filtres personnalisés sont implémentés dans la méthode SendRequestAsync sur leur interface IHttpFilter .
Les classes de l’espace de noms Windows.Web.Http prennent en charge l’utilisation de filtres basés sur les classes de l’espace de noms Windows.Web.Http.Filters . La classe HttpClient de l’espace de noms Windows.Web.Http fournit une classe de base pour l’envoi de requêtes HTTP et la réception de réponses HTTP. Les filtres fournissent un mécanisme de gestionnaire pour aider à résoudre les problèmes courants liés au service HTTP. Les filtres simples peuvent être chaînés dans une séquence pour gérer des problèmes de service HTTP plus complexes.
Un filtre HTTP est une zone noire qui accepte un message de requête HTTP et produit un message de réponse HTTP. La façon dont le filtre obtient une réponse HTTP est déterminée par le développeur du filtre. Une application peut créer la réponse immédiatement, elle peut envoyer la requête via TCP à un serveur, elle peut même envoyer plusieurs requêtes à un serveur (ou à plusieurs serveurs) avant de générer un message de réponse. Étant donné que la façon dont un filtre accède à un message de réponse n’est pas spécifiée, un filtre peut transmettre le message de demande à un autre filtre (appelé filtre interne), déléguant ainsi la création d’un message de réponse au filtre interne.
Les filtres ajoutent ou modifient généralement des en-têtes, gèrent l’autorisation (éventuellement à l’aide de WebAuthenticationBroker), ou autorisent ou interdisent une demande en fonction des conditions réseau. Les filtres apportent généralement des modifications, puis passent la demande à un filtre interne, qui est généralement défini lors de la construction d’un filtre.
Cette approche permet aux filtres d’être uniquement responsables d’un aspect spécifique de l’exécution d’une requête HTTP et de déléguer d’autres aspects à d’autres filtres. Un filtre peut implémenter la mise en cache, l’authentification, les redirections, les cookies, la communication réelle avec le serveur ou une combinaison de ces éléments. Le filtre le plus bas (de base) est généralement celui qui effectue la communication réelle avec le réseau.
Voici quelques exceptions levées par cette fonction.
E_INVALIDARG
Le paramètre de requête était une référence null (Nothing en Visual Basic).
E_ILLEGAL_METHOD_CALL
Le message de demande a déjà été envoyé par le instance IHttpFilter.