Schémas d’URIURI schemes

Vous pouvez utiliser plusieurs schémas d’URI (Uniform Resource Identifier) pour faire référence à des fichiers qui proviennent de votre package d’application, des dossiers de données de votre application ou du cloud.There are several URI (Uniform Resource Identifier) schemes that you can use to refer to files that come from your app's package, your app's data folders, or the cloud. Vous pouvez également utiliser un schéma d’URI pour faire référence à des chaînes chargées à partir des fichiers de ressources (.resw) de votre application.You can also use a URI scheme to refer to strings loaded from your app's Resources Files (.resw). Vous pouvez utiliser ces schémas d’URI dans votre code, dans votre balisage XAML, dans votre manifeste de package d’application, ou dans vos modèles de notification de vignette et de Toast.You can use these URI schemes in your code, in your XAML markup, in your app package manifest, or in your tile and toast notification templates.

Fonctionnalités courantes des schémas d’URICommon features of the URI schemes

Tous les schémas décrits dans cette rubrique suivent les règles de modèle d’URI typiques pour la normalisation et la récupération des ressources.All of the schemes described in this topic follow typical URI scheme rules for normalization and resource retrieval. Consultez la RFC 3986 pour connaître la syntaxe générique d’un URI.See RFC 3986 for the generic syntax of a URI.

Tous les schémas d’URI définissent la partie hiérarchique par RFC 3986 en tant que composants d’autorité et de chemin d’accès de l’URI.All of the URI schemes define the hierarchical part per RFC 3986 as the authority and path components of the URI.

URI         = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
hier-part   = "//" authority path-abempty
            / path-absolute
            / path-rootless
            / path-empty

Cela signifie qu’il existe essentiellement trois composants à un URI.What this means is that there are essentially three components to a URI. Le fait de suivre immédiatement les deux barres obliques du schéma d’URI est un composant (qui peut être vide) appelé autorité.Immediately following the two forward slashes of the URI scheme is a component (which can be empty) called the authority. Et immédiatement après cela est le chemin d’accès.And immediately following that is the path. En utilisant l’URI http://www.contoso.com/welcome.png comme exemple, le schéma est « http:// », l’autorité est « www.contoso.com » et le chemin d’accès est « /welcome.png ».Taking the URI http://www.contoso.com/welcome.png as an example, the scheme is "http://", the authority is "www.contoso.com", and the path is "/welcome.png". Un autre exemple est l’URI ms-appx:///logo.png , où les composants d’autorité sont vides et prennent une valeur par défaut.Another example is the URI ms-appx:///logo.png, where the authority components is empty and takes a default value.

Le composant fragment est ignoré par le traitement propre au schéma des URI mentionnés dans cette rubrique.The fragment component is ignored by the scheme-specific processing of the URIs mentioned in this topic. Pendant la récupération et la comparaison des ressources, le composant de fragment n’a pas de palier.During resource retrieval and comparison, the fragment component has no bearing. Toutefois, les couches au-dessus de l’implémentation spécifique peuvent interpréter le fragment pour récupérer une ressource secondaire.However, layers above specific implementation may interpret the fragment to retrieve a secondary resource.

La comparaison se produit octet pour Byte après la normalisation de tous les composants IRI.Comparison occurs byte for byte after normalization of all IRI components.

Non-respect de la casse et normalisationCase-insensitivity and normalization

Tous les schémas d’URI décrits dans cette rubrique suivent les règles URI typiques (RFC 3986) pour la normalisation et la récupération des ressources pour les schémas.All the URI schemes described in this topic follow typical URI rules (RFC 3986) for normalization and resource retrieval for schemes. La forme normalisée de ces URI gère la casse et le pourcentage de décodage des caractères non réservés RFC 3986.The normalized form of these URIs maintains case and percent-decodes RFC 3986 unreserved characters.

Pour tous les schémas d’URI décrits dans cette rubrique, le schéma, l' autoritéet le chemin d’accès ne sont pas sensibles à la casse par standard, ou sont traités par le système sans respect de la casse.For all the URI schemes described in this topic, scheme, authority, and path are either case-insensitive by standard, or else are processed by the system in a case-insensitive way. Remarque La seule exception à cette règle est l' autorité de qui respecte la ms-resource casse.Note The only exception to that rule is the authority of ms-resource, which is case-sensitive.

MS-AppX et MS-AppX-Webms-appx and ms-appx-web

Utilisez le ms-appx ms-appx-web modèle URI ou pour faire référence à un fichier qui provient du package de votre application (consultez empaquetage d’applications).Use the ms-appx or the ms-appx-web URI scheme to refer to a file that comes from your app's package (see Packaging apps). Les fichiers de votre package d’application sont généralement des images statiques, des données, du code et des fichiers de disposition.Files in your app package are typically static images, data, code, and layout files. Le ms-appx-web schéma accède aux mêmes fichiers que ms-appx , mais dans le compartiment Web.The ms-appx-web scheme accesses the same files as ms-appx, but in the web compartment. Pour obtenir des exemples et des informations supplémentaires, consultez référencer une image ou une autre ressource à partir du balisage et du code XAML.For examples and more info, see Reference an image or other asset from XAML markup and code.

Nom du schéma (MS-AppX et MS-AppX-Web)Scheme name (ms-appx and ms-appx-web)

Le nom du modèle d’URI est la chaîne « MS-AppX » ou « MS-AppX-Web ».The URI scheme name is the string "ms-appx" or "ms-appx-web".

ms-appx://
ms-appx-web://

Autorité (MS-AppX et MS-AppX-Web)Authority (ms-appx and ms-appx-web)

L’autorité est le nom de l’identité du package qui est défini dans le manifeste du package.The authority is the package identity name that is defined in the package manifest. Elle est donc limitée à la fois dans l’URI et dans le formulaire IRI (International Resource Identifier) à l’ensemble de caractères autorisé dans un nom d’identité de package.It is therefore limited in both the URI and IRI (Internationalized resource identifier) form to the set of characters allowed in a package identity name. Le nom du package doit être le nom de l’un des packages dans le graphique des dépendances du package de l’application en cours d’exécution.The package name must be the name of one of the packages in the current running app's package dependency graph.

ms-appx://Contoso.MyApp/
ms-appx-web://Contoso.MyApp/

Si un autre caractère apparaît dans l’autorité, la récupération et la comparaison échouent.If any other character appears in the authority, then retrieval and comparison fail. La valeur par défaut de l’autorité est le package de l’application en cours d’exécution.The default value for the authority is the currently running app's package.

ms-appx:///
ms-appx-web:///

Informations utilisateur et port (MS-AppX et MS-AppX-Web)User info and port (ms-appx and ms-appx-web)

ms-appxContrairement à d’autres schémas populaires, le schéma ne définit pas un composant d’informations utilisateur ou de port.The ms-appx scheme, unlike other popular schemes, does not define a user info or port component. Comme « @" and " : » ne sont pas autorisés en tant que valeurs d’autorité valides, la recherche échoue si elles sont incluses.Since "@" and ":" are not allowed as valid authority values, lookup will fail if they are included. Chacun des éléments suivants échoue.Each of the following fails.

ms-appx://john@contoso.myapp/default.html
ms-appx://john:password@contoso.myapp/default.html
ms-appx://contoso.myapp:8080/default.html
ms-appx://john:password@contoso.myapp:8080/default.html

Chemin d’accès (MS-AppX et MS-AppX-Web)Path (ms-appx and ms-appx-web)

Le composant Path correspond à la syntaxe RFC 3986 générique et prend en charge les caractères non-ASCII dans IRIs.The path component matches the generic RFC 3986 syntax and supports non-ASCII characters in IRIs. Le composant Path définit le chemin logique ou physique d’un fichier.The path component defines the logical or physical file path of a file. Ce fichier se trouve dans un dossier associé à l’emplacement d’installation du package d’application, pour l’application spécifiée par l’autorité.That file is in a folder associated with the installed location of the app package, for the app specified by the authority.

Si le chemin d’accès fait référence à un chemin d’accès physique et à un nom de fichier, cette ressource de fichier physique est récupérée.If the path refers to a physical path and file name then that physical file asset is retrieved. Toutefois, si aucun fichier physique de ce type n’est trouvé, la ressource réelle retournée pendant la récupération est déterminée à l’aide de la négociation de contenu au moment de l’exécution.But if no such physical file is found then the actual resource returned during retrieval is determined by using content negotiation at runtime. Cette détermination est basée sur les paramètres de l’application, du système d’exploitation et de l’utilisateur, tels que la langue, l’affichage du facteur d’échelle, du thème, du contraste élevé et d’autres contextes d’exécution.This determination is based on app, OS, and user settings such as language, display scale factor, theme, high contrast, and other runtime contexts. Par exemple, une combinaison des langues de l’application, des paramètres d’affichage du système et des paramètres de contraste élevé de l’utilisateur peut être prise en compte lors de la détermination de la valeur réelle de la ressource à récupérer.For example, a combination of the app's languages, the system's display settings, and the user's high contrast settings may be taken into account when determining the actual resource value to be retrieved.

ms-appx:///images/logo.png

L’URI ci-dessus peut en fait récupérer un fichier dans le package de l’application actuelle avec le nom de fichier physique suivant.The URI above may actually retrieve a file within the current app's package with the following physical file name.

\Images\fr-FR\logo.scale-100_contrast-white.png

Vous pouvez également récupérer ce même fichier physique en y faisant référence directement par son nom complet.You could of course also retrieve that same physical file by referring to it directly by its full name.

<Image Source="ms-appx:///images/fr-FR/logo.scale-100_contrast-white.png"/>

Le composant de chemin d’accès de ms-appx(-web) est, comme les URI génériques, sensible à la casse.The path component of ms-appx(-web) is, like generic URIs, case sensitive. Toutefois, lorsque le système de fichiers sous-jacent sur lequel la ressource est accédée ne respecte pas la casse, par exemple pour NTFS, la récupération de la ressource est effectuée sans respect de la casse.However, when the underlying file system by which the resource is accessed is case insensitive, such as for NTFS, the retrieval of the resource is done case-insensitively.

La forme normalisée de l’URI conserve la casse, et le pourcentage de décodage (un symbole « % » suivi de la représentation hexadécimale à deux chiffres) des caractères non réservés RFC 3986.The normalized form of the URI maintains case, and percent-decodes (a "%" symbol followed by the two-digit hexadecimal representation) RFC 3986 unreserved characters. Les caractères «  ? », « # », « / », « * » et «» (guillemet double) doivent être encodés en pourcentage dans un chemin d’accès pour représenter des données telles que des noms de fichiers ou de dossiers.The characters "?", "#", "/", "*", and '"' (the double-quote character) must be percent-encoded in a path to represent data such as file or folder names. Tous les caractères encodés en pourcentage sont décodés avant la récupération.All percent-encoded characters are decoded before retrieval. Par conséquent, pour récupérer un fichier nommé hello # World.html, utilisez cet URI.Thus, to retrieve a file named Hello#World.html, use this URI.

ms-appx:///Hello%23World.html

Requête (MS-AppX et MS-AppX-Web)Query (ms-appx and ms-appx-web)

Les paramètres de requête sont ignorés pendant la récupération des ressources.Query parameters are ignored during retrieval of resources. La forme normalisée des paramètres de requête conserve la casse.The normalized form of query parameters maintains case. Les paramètres de requête ne sont pas ignorés pendant la comparaison.Query parameters are not ignored during comparison.

ms-appdatams-appdata

Utilisez le ms-appdata schéma d’URI pour faire référence aux fichiers provenant des dossiers de données locaux, itinérants et temporaires de l’application.Use the ms-appdata URI scheme to refer to files that come from the app's local, roaming, and temporary data folders. Pour plus d’informations sur ces dossiers de données d’application, consultez stocker et récupérer des paramètres et d’autres données d’application.For more info about these app data folders, see Store and retrieve settings and other app data.

Le ms-appdata schéma d’URI n’effectue pas la négociation de contenu au moment de l’exécution que MS-AppX et MS-AppX-Web font.The ms-appdata URI scheme does not perform the runtime content negotiation that ms-appx and ms-appx-web do. Toutefois, vous pouvez répondre au contenu de ResourceContext. QualifierValues et charger les ressources appropriées à partir des données d’application à l’aide de leur nom de fichier physique complet dans l’URI.But you can respond to the contents of ResourceContext.QualifierValues and load the appropriate assets from app data using their full physical file name in the URI.

Nom du schéma (MS-AppData)Scheme name (ms-appdata)

Le nom du schéma d’URI est la chaîne « MS-AppData ».The URI scheme name is the string "ms-appdata".

ms-appdata://

Autorité (MS-AppData)Authority (ms-appdata)

L’autorité est le nom de l’identité du package qui est défini dans le manifeste du package.The authority is the package identity name that is defined in the package manifest. Elle est donc limitée à la fois dans l’URI et dans le formulaire IRI (International Resource Identifier) à l’ensemble de caractères autorisé dans un nom d’identité de package.It is therefore limited in both the URI and IRI (Internationalized resource identifier) form to the set of characters allowed in a package identity name. Le nom du package doit être le nom du package de l’application en cours d’exécution.The package name must be the name of the current running app's package.

ms-appdata://Contoso.MyApp/

Si un autre caractère apparaît dans l’autorité, la récupération et la comparaison échouent.If any other character appears in the authority, then retrieval and comparison fail. La valeur par défaut de l’autorité est le package de l’application en cours d’exécution.The default value for the authority is the currently running app's package.

ms-appdata:///

Informations utilisateur et port (MS-AppData)User info and port (ms-appdata)

ms-appdataContrairement à d’autres schémas populaires, le schéma ne définit pas un composant d’informations utilisateur ou de port.The ms-appdata scheme, unlike other popular schemes, does not define a user info or port component. Comme « @" and " : » ne sont pas autorisés en tant que valeurs d’autorité valides, la recherche échoue si elles sont incluses.Since "@" and ":" are not allowed as valid authority values, lookup will fail if they are included. Chacun des éléments suivants échoue.Each of the following fails.

ms-appdata://john@contoso.myapp/local/data.xml
ms-appdata://john:password@contoso.myapp/local/data.xml
ms-appdata://contoso.myapp:8080/local/data.xml
ms-appdata://john:password@contoso.myapp:8080/local/data.xml

Chemin d’accès (MS-AppData)Path (ms-appdata)

Le composant Path correspond à la syntaxe RFC 3986 générique et prend en charge les caractères non-ASCII dans IRIs.The path component matches the generic RFC 3986 syntax and supports non-ASCII characters in IRIs. Dans l’emplacement Windows. Storage. ApplicationData se trouvent trois dossiers réservés pour le stockage d’état local, itinérant et temporaire.Within the Windows.Storage.ApplicationData location are three reserved folders for local, roaming, and temporary state storage. Le ms-appdata schéma autorise l’accès aux fichiers et aux dossiers dans ces emplacements.The ms-appdata scheme allows access to files and folders in those locations. Le premier segment du composant de chemin d’accès doit spécifier le dossier particulier de la manière suivante.The first segment of the path component must specify the particular folder in the following fashion. Par conséquent, le format « chemin d’accès vide » de « hier-part » n’est pas légal.Thus the "path-empty" form of "hier-part" is not legal.

Dossier local.Local folder.

ms-appdata:///local/

Dossier temporaire.Temporary folder.

ms-appdata:///temp/

Dossier d’itinérance.Roaming folder.

ms-appdata:///roaming/

Le composant de chemin d’accès de ms-appdata est, comme les URI génériques, sensible à la casse.The path component of ms-appdata is, like generic URIs, case sensitive. Toutefois, lorsque le système de fichiers sous-jacent sur lequel la ressource est accédée ne respecte pas la casse, par exemple pour NTFS, la récupération de la ressource est effectuée sans respect de la casse.However, when the underlying file system by which the resource is accessed is case insensitive, such as for NTFS, the retrieval of the resource is done case-insensitively.

La forme normalisée de l’URI conserve la casse, et le pourcentage de décodage (un symbole « % » suivi de la représentation hexadécimale à deux chiffres) des caractères non réservés RFC 3986.The normalized form of the URI maintains case, and percent-decodes (a "%" symbol followed by the two-digit hexadecimal representation) RFC 3986 unreserved characters. Les caractères «  ? », « # », « / », « * » et «» (guillemet double) doivent être encodés en pourcentage dans un chemin d’accès pour représenter des données telles que des noms de fichiers ou de dossiers.The characters "?", "#", "/", "*", and '"' (the double-quote character) must be percent-encoded in a path to represent data such as file or folder names. Tous les caractères encodés en pourcentage sont décodés avant la récupération.All percent-encoded characters are decoded before retrieval. Par conséquent, pour récupérer un fichier local nommé hello # World.html, utilisez cet URI.Thus, to retrieve a local file named Hello#World.html, use this URI.

ms-appdata://local/Hello%23World.html

La récupération de la ressource, ainsi que l’identification du segment de chemin d’accès de niveau supérieur, sont gérées après la normalisation des points («.. /./b/c").Retrieval of the resource, and identification of the top level path segment, are handled after normalization of dots (".././b/c"). Par conséquent, les URI ne peuvent pas se déconnecter de l’un des dossiers réservés.Therefore, URIs cannot dot themselves out of one of the reserved folders. Ainsi, l’URI suivant n’est pas autorisé.Thus, the following URI is not allowed.

ms-appdata:///local/../hello/logo.png

Mais cet URI est autorisé (quoique redondant).But this URI is allowed (albeit redundant).

ms-appdata:///local/../roaming/logo.png

Requête (MS-AppData)Query (ms-appdata)

Les paramètres de requête sont ignorés pendant la récupération des ressources.Query parameters are ignored during retrieval of resources. La forme normalisée des paramètres de requête conserve la casse.The normalized form of query parameters maintains case. Les paramètres de requête ne sont pas ignorés pendant la comparaison.Query parameters are not ignored during comparison.

MS-Resourcems-resource

Utilisez le ms-resource schéma d’URI pour faire référence aux chaînes chargées à partir des fichiers de ressources de votre application (. resw).Use the ms-resource URI scheme to refer to strings loaded from your app's Resources Files (.resw). Pour obtenir des exemples et des informations supplémentaires sur les fichiers de ressources, consultez localiser des chaînes dans votre interface utilisateur et le manifeste du package d’application.For examples and more info about Resources Files, see Localize strings in your UI and app package manifest.

Nom du schéma (MS-Resource)Scheme name (ms-resource)

Le nom du schéma d’URI est la chaîne « MS-Resource ».The URI scheme name is the string "ms-resource".

ms-resource://

Autorité (MS-Resource)Authority (ms-resource)

L’autorité est la carte de ressources de niveau supérieur définie dans l’index de ressource de package (PRI), qui correspond généralement au nom d’identité du package défini dans le manifeste du package.The authority is the top-level resource map defined in the Package Resource Index (PRI), which typically corresponds to the package identity name that is defined in the package manifest. Consultez empaquetage d’applications).See Packaging apps). Elle est donc limitée à la fois dans l’URI et dans le formulaire IRI (International Resource Identifier) à l’ensemble de caractères autorisé dans un nom d’identité de package.It is therefore limited in both the URI and IRI (Internationalized resource identifier) form to the set of characters allowed in a package identity name. Le nom du package doit être le nom de l’un des packages dans le graphique des dépendances du package de l’application en cours d’exécution.The package name must be the name of one of the packages in the current running app's package dependency graph.

ms-resource://Contoso.MyApp/
ms-resource://Microsoft.WinJS.1.0/

Si un autre caractère apparaît dans l’autorité, la récupération et la comparaison échouent.If any other character appears in the authority, then retrieval and comparison fail. La valeur par défaut de l’autorité est le nom du package qui respecte la casse de l’application en cours d’exécution.The default value for the authority is the case-sensitive package name of the currently running app.

ms-resource:///

L’autorité respecte la casse et la forme normalisée conserve son cas.The authority is case sensitive, and the normalized form maintains its case. Toutefois, la recherche d’une ressource ne respecte pas la casse.Lookup of a resource, however, happens case-insensitively.

Informations utilisateur et port (MS-Resource)User info and port (ms-resource)

ms-resourceContrairement à d’autres schémas populaires, le schéma ne définit pas un composant d’informations utilisateur ou de port.The ms-resource scheme, unlike other popular schemes, does not define a user info or port component. Comme « @" and " : » ne sont pas autorisés en tant que valeurs d’autorité valides, la recherche échoue si elles sont incluses.Since "@" and ":" are not allowed as valid authority values, lookup will fail if they are included. Chacun des éléments suivants échoue.Each of the following fails.

ms-resource://john@contoso.myapp/Resources/String1
ms-resource://john:password@contoso.myapp/Resources/String1
ms-resource://contoso.myapp:8080/Resources/String1
ms-resource://john:password@contoso.myapp:8080/Resources/String1

Chemin d’accès (MS-Resource)Path (ms-resource)

Le chemin d’accès identifie l’emplacement hiérarchique de la sous-arborescence ResourceMap (consultez le système de gestion des ressources) et le NamedResource qu’il contient.The path identifies the hierarchical location of the ResourceMap subtree (see Resource Management System) and the NamedResource within it. En général, il correspond au nom de fichier (extension) des fichiers de ressources (. resw) et à l’identificateur d’une ressource de chaîne qu’il contient.Typically, this corresponds to the filename (excluding extension) of a Resources Files (.resw) and the identifier of a string resource within it.

Pour obtenir des exemples et plus d’informations, consultez localiser des chaînes dans votre interface utilisateur et le manifeste du package d’application , ainsi que prise en charge des notifications par vignette et toast pour le langage,la mise à l’échelle et le contraste élevé.For examples and more info, see Localize strings in your UI and app package manifest and Tile and toast notification support for language, scale, and high contrast.

Le composant de chemin d’accès de ms-resource est, comme les URI génériques, sensible à la casse.The path component of ms-resource is, like generic URIs, case sensitive. Toutefois, la récupération sous-jacente fait un comparestringordinal, avec ignoreCase défini sur true .However, the underlying retrieval does a CompareStringOrdinal with ignoreCase set to true.

La forme normalisée de l’URI conserve la casse, et le pourcentage de décodage (un symbole « % » suivi de la représentation hexadécimale à deux chiffres) des caractères non réservés RFC 3986.The normalized form of the URI maintains case, and percent-decodes (a "%" symbol followed by the two-digit hexadecimal representation) RFC 3986 unreserved characters. Les caractères «  ? », « # », « / », « * » et «» (guillemet double) doivent être encodés en pourcentage dans un chemin d’accès pour représenter des données telles que des noms de fichiers ou de dossiers.The characters "?", "#", "/", "*", and '"' (the double-quote character) must be percent-encoded in a path to represent data such as file or folder names. Tous les caractères encodés en pourcentage sont décodés avant la récupération.All percent-encoded characters are decoded before retrieval. Par conséquent, pour récupérer une ressource de type chaîne à partir d’un fichier de ressources nommé Hello#World.resw , utilisez cet URI.Thus, to retrieve a string resource from a Resources File named Hello#World.resw, use this URI.

ms-resource:///Hello%23World/String1

Requête (MS-Resource)Query (ms-resource)

Les paramètres de requête sont ignorés pendant la récupération des ressources.Query parameters are ignored during retrieval of resources. La forme normalisée des paramètres de requête conserve la casse.The normalized form of query parameters maintains case. Les paramètres de requête ne sont pas ignorés pendant la comparaison.Query parameters are not ignored during comparison. Les paramètres de requête sont comparés en respectant la casse.Query parameters are compared case-sensitively.

Les développeurs de composants particuliers superposés au-dessus de cette analyse URI peuvent choisir d’utiliser les paramètres de requête tels qu’ils s’affichent.Developers of particular components layered above this URI parsing may choose to use the query parameters as they see fit.