Charger un calque MilX via un paramètre URL dans map.army

Cet article explique comment charger un calque MilX depuis votre serveur web vers le site map.army.

Chaque paramètre URL accepté

Gestionnaire des layers de map.army montrant des calques MilX chargés via un paramètre d'URL '?layer='

Un lien map.army peut transporter plus d’une instruction. Voici les paramètres que l’application lit :

ParamètreValeurCe qu’il fait
layerURL d’un fichier MilXCharge ce calque. Répétable — indiquez-le plusieurs fois pour charger plusieurs calques. Ajoutez ;readonly à une URL pour ajouter le calque en lecture seule.
ShareIDnombreOuvre un MilX Share par son identifiant — voir Comment créer un partage
UserTypela chaîne secrète du partageLe secret qui authentifie le lien. Malgré son nom, ce n’est pas un nom de rôle — n’y mettez pas RO, RC ou RW ; le niveau d’accès est déterminé par quel secret vous utilisez
VersionIDnombreOuvre une version spécifique d’un partage au lieu de la plus récente
mapTypeJSON sous forme de chaîneDessine un fond de carte personnalisé WMTS ou WMS, à la place de la liste habituelle — voir ci-dessous
share-target(pas de valeur)Défini par le système d’exploitation lorsque vous partagez un fichier vers l’application installée ; ce n’est pas quelque chose que vous écrivez vous-même

Le suffixe ;readonly est le plus utile pour la publication : un lecteur peut consulter votre calque et s’y déplacer, mais ne peut pas modifier ce que vous avez publié.

mapType est le seul paramètre qui mérite plus qu’une ligne. Il transporte une description JSON d’un service WMTS ou WMS, et ce service remplace la liste des fonds de carte pour la session au lieu de s’y ajouter — chaque propriété, des exemples concrets pour les deux types de service, l’obligation d’attribution et les deux façons dont un lien peut échouer sont couverts dans Connectez votre propre service de carte.

Quelle instruction l’emporte

Lorsque plusieurs sources pourraient fournir des calques, map.army applique un ordre fixe et retient la première qui s’applique :

  1. Un fichier transmis à l’application installée par le système d’exploitation — vous avez double-cliqué sur un fichier .milxlyz.
  2. Ce que l’URL demande — layer, ou un partage via ShareID.
  3. Un fichier partagé vers l’application via le menu de partage du système.
  4. Le dernier lien de partage que vous avez ouvert, mémorisé depuis votre session précédente.
  5. Rien à charger : l’application démarre avec un calque vide.

Un lien ?layer= l’emporte donc toujours sur la session que vous avez laissée derrière vous, ce qui rend ce type de lien sûr à envoyer à quelqu’un qui utilise déjà map.army.

Intégrer dans une page

Bouton du générateur d'iframe dans la boîte de dialogue de partage map.army, pour intégrer l'app dans une page

Pour intégrer map.army dans une page web, utilisez un iframe — voir Intégrer map.army dans un site web via un iFrame. Les paramètres ci-dessus fonctionnent dans un cadre intégré exactement comme dans un lien normal.

Charger un calque MilX via un paramètre URL

La dernière version de l’application web permet de charger des calques MilX comme paramètre URL. Cela permet d’intégrer des cartes interactives dans une page web ou un blog :

Les étapes suivantes sont nécessaires pour l’intégration :

Calque de démonstration de l'application web

Étape 1 – Enregistrer le ou les calques MilX

Créez vos calques dans l’application web map.army. Enregistrez une ou plusieurs calques dans un seul fichier MilX (collection de calques).

Étape 2 – Téléverser
Chargez le fichier MilX créé à l’étape 1 sur votre serveur web. Vérifiez que le calque peut être téléchargé en tant que fichier via un navigateur web. Exemple de lien vers un calque : www.gs-soft.com/CMS/files/Layer.milxlyz
Si vous ne pouvez pas télécharger le fichier : vérifiez que le serveur web prend en charge le format de fichier MilX (type MIME) :

Configuration du type MIME du serveur web pour les extensions de fichiers .milxlyz et .milxly

Exemple de définition de type MIME pour *.milxlyz et *.milxly.

Étape 3 - Cross-Origin Resource Sharing (CORS)

Votre serveur web prend-il en charge le CORS ? Ceci est requis pour que les fichiers MilX de votre serveur web puissent être chargés par un navigateur web exécutant l’application sur www.map.army. Le CORS doit donc être activé pour le domaine www.map.army. Selon le serveur web, cela peut être fait comme suit :


Apache : Le fichier *.htaccess (dans le dossier du serveur web contenant le fichier *.milxlyz) doit être complété avec la permission suivante :

En-tête CORS Apache .htaccess autorisant l'accès à map.army
Header add Access-Control-Allow-Origin: https://www.map.army

Remarque : S’il n’y a pas de fichier *.htaccess dans ce dossier, il doit être créé et la permission ci-dessus doit y être intégrée.


IIS : La personnalisation suivante doit être effectuée dans l’interface graphique IIS :

Boîte de dialogue des paramètres CORS IIS pour le dossier des fichiers MilX Paramètres CORS IIS autorisant le domaine map.army

En alternative, la permission suivante peut autoriser le CORS via le fichier web.config (dans le dossier contenant le fichier *.milxlyz) :

Extrait XML de configuration CORS et type MIME dans web.config IIS
<?xml version="1.0" encoding="UTF-8"?>  
  <configuration>  
      <system.webServer>  
          <staticContent>  
              <mimeMap fileExtension=".milxlyz" mimeType="application/octet-stream" />  
          </staticContent>  
          <httpProtocol>  
              <customHeaders>  
                  <add name="Access-Control-Allow-Origin" value=" https://www.map.army" />
                </customHeaders>  
          </httpProtocol>  
      </system.webServer>  
  </configuration>

Étape 4 - Tester

Est-il possible de charger un calque MilX directement depuis le serveur web dans www.map.army en utilisant les paramètres URL ? Pour tester, vous pouvez remplacer l’URL du calque MilX (www.gs-soft.com/CMS/files/Layer.milxlyz) dans l’exemple suivant :

https://www.map.army/?layer=www.gs-soft.com/CMS/files/Layer.milxlyz

Étape 5 - Paramètre lecture seule

Selon l’application, les calques chargés via le paramètre URL doivent être modifiables ou non. À cette fin, le paramètre “readonly” est fourni. Il peut être ajouté à l’URL comme le montre l’exemple suivant :

https://www.map.army/?layer=www.gs-soft.com/CMS/files/Layer.milxlyz;readonly

Étape 6 - Ajuster l’iFrame Après avoir complété les étapes 1 à 5, vous pouvez ajouter les paramètres URL à l’iFrame de votre page web. Voici un exemple de code que vous pouvez copier :

Exemple 1 :

<iframe src="https://www.map.army/?layer=www.gs-soft.com/CMS/files/Layer.milxlyz;readonly"  
width="800" height="600" style="border:0" loading="lazy" referrerpolicy="no-referrer"></iframe> 

Exemple 2 :

<iframe src="https://www.map.army/?layer=www.gs-soft.com/CMS/files/Demo-Layers.milxlyz;readonly"   
width="100%" height="98%" style="border:0" loading="lazy" referrerpolicy="no-referrer"></iframe>

Pour toute question supplémentaire, nous sommes heureux de vous aider dans notre Google Group.

Dernière mise à jour: