uri, classe
Implémentation d'uri flexible et indépendante du protocole. Les instances d'URI sont immuables. L'interrogation des différents champs sur un uri vide retourne des chaînes vides. L'interrogation de différents membres de diagnostics sur un uri vide retourne la valeur false.
Avertissement
Cette rubrique contient des informations pour le Kit de développement logiciel (SDK) C++ REST 1.0 (nom de code « Casablanca »).Si vous utilisez une version plus récente provenant de la page web Codeplex Casablanca, consultez la documentation locale qui se trouve à l'adresse http://casablanca.codeplex.com/documentation.
class uri;
Membres
Classes publiques
Nom |
Description |
---|---|
Les différents composants d'un URI. Cette énumération est utilisée pour indiquer le composant URI qui est encodé à l'encode_uri_component. Elle permet l'exécution d'un encodage spécifique. Le schéma et le port ne prennent pas en charge '%', il est donc inutile de les encoder. |
Constructeurs publics
Nom |
Description |
---|---|
Surchargé. Crée un uri vide. |
Méthodes publiques
Nom |
Description |
---|---|
Crée un objet uri avec la même partie d'autorité que celui-ci, en omettant les parties ressource et requête. |
|
Décode une chaîne encodée. |
|
Encode une chaîne en convertissant tous les caractères, à l'exception des caractères non réservés de la RFC 3986, en leur représentation hexadécimale. |
|
Encode un composant URI conformément à la RFC 3986. Si un URI complet est spécifié à la place d'un composant URI individuel, tous les caractères ne figurant pas dans le jeu de caractères non réservés sont ignorés. |
|
Obtient le composant de fragment de l'URI sous la forme d'une chaîne encodée. |
|
Retourne une valeur si l'autre uri possède la même autorité que celui-ci. |
|
Obtient le composant d'hôte de l'URI sous la forme d'une chaîne encodée. |
|
Un uri d'« autorité » est un uri comprenant uniquement un schéma, un userinfo facultatif, un nom d'hôte et un port (facultatif). |
|
Un uri vide n'indique aucun composant et sert de valeur par défaut. |
|
Un URI de bouclage fait référence à un nom d'hôte ou à une adresse IP n'ayant une signification que sur l'ordinateur local. |
|
Un URI portable est un uri avec un nom d'hôte pouvant être résolu de façon globale (utilisé à partir d'un autre ordinateur). |
|
Un caractère générique URI est celui qui fait référence à tous les noms d'hôte se résolvant sur l'ordinateur local (à l'aide d'une * ou d'un +) |
|
Retourne une valeur si la partie de chemin d'accès de cet uri est vide. |
|
Obtient le composant de chemin d'accès de l'URI sous la forme d'une chaîne encodée. |
|
Obtient le composant de port de l'URI. Retourne -1 si aucun port n'est spécifié. |
|
Obtient le composant de requête de l'URI sous la forme d'une chaîne encodée. |
|
Obtient le chemin d'accès, la requête et la partie fragment de cet uri, qui peut être vide. |
|
Obtient le composant de schéma de l'URI sous la forme d'une chaîne encodée. |
|
Scinde un chemin d'accès en ses composants hiérarchiques. |
|
Scinde une requête en ses composants clé-valeur. |
|
Retourne l'uri (encodé) complet sous forme de chaîne. |
|
Obtient le composant d'informations utilisateur de l'URI sous la forme d'une chaîne encodée. |
|
Valide une chaîne en tant qu'uri. |
Opérateurs publics
Nom |
Description |
---|---|
Notes
Cette implémentation accepte les uri ('https://msn.com/path') et les références s'y rapportant ('/path?query#frag'). Cette implémentation ne fournit aucune gestion spécifique au schéma (par exemple, 'http://path1/path'. Il s'agit d'un uri valide, mais pas d'un uri http valide : autrement dit, sa syntaxe est correcte mais elle ne remplit pas les conditions du schéma http (http nécessite un hôte). Cela serait possible en autorisant une classe de stratégie 'scheme' enfichable, qui pourrait offrir une fonctionnalité supplémentaire pour la validation et la canonicalisation d'un uri en fonction du schéma et introduire une couche de sécurité de type pour les uri de différents schémas, et donc une sémantique différente. La comparaison d'égalité pose problème pour l'implémentation d'une fonctionnalité d'uri indépendante du schéma. Par exemple, ces uri sont considérés comme suit : 'https://msn.com', 'https://msn.com:80'. Autrement dit, le port « par défaut » peut être omis ou explicite. Nous n'avons aucun moyen de mapper un schéma à son port par défaut, nous ne pouvons donc pas savoir qu'ils sont similaires. Il s'agit d'une seule classe de problèmes liée au comportement spécifique au schéma.
Configuration requise
En-tête : base_uri.h
Espace de noms : web::http