Skip To Content

Services d'entités et applications client

Plusieurs clients ArcGIS sont mis à votre disposition pour vous permettre de modifier (ou de visualiser) les entités de votre service d'entités. Les clients peuvent utiliser des services d'entités à l'aide d'un client Web ou d'ArcGIS Desktop.

Clients Web ArcGIS prêts à l'emploi

Map Viewer Classic et les modèles disponibles dans ArcGIS Online et ArcGIS Enterprise fournissent des fonctions de base prêtes à l'emploi pour la mise à jour des services d'entités. Sans aucune programmation, vous pouvez rapidement créer une application de mise à jour Web permettant aux utilisateurs d'ajouter, de mettre à jour et de supprimer des entités géographiques dans une base de données.

Ainsi, lors de l'utilisation des applications prêtes à l'emploi, vous pouvez effectuer les opérations suivantes :

  • Mettre à jour des couches en sélection seule.
  • Effectuer le suivi des mises à jour. (Disponible pour les géodatabases d'entreprise, et non pour les bases de données.)
  • Contrôler l'accès aux entités à l'aide du contrôle d'accès en fonction de la propriété. (Disponible pour les géodatabases d'entreprise, et non pour les bases de données.)
  • Empêcher les utilisateurs de mettre à jour la géométrie de l'entité.

Vous pouvez ajouter des services d'entités à la Map Viewer Classic dans ArcGIS Online ou au site Web de votre portail à l'aide de l'URL d'accès au répertoire de services du service ArcGIS Server. Après avoir créé une carte contenant votre service d'entités, vous pouvez la partager avec d'autres personnes de votre organisation, l'incorporer dans un site Web ou encore coller un lien (URL) vers l'application dans un message électronique, un blog ou un site Web. Les cartes que vous créez peuvent également être déployées sur le serveur Web de votre organisation en téléchargeant les modèles d'application à partir d'ArcGIS Online. Ces modèles sont entièrement personnalisables.

Les didacticiels suivants utilisent un service d'entités en plus de la ArcGIS.com map viewer pour mettre à jour les entités :

Vous pouvez également ajouter des services d'entités en tant qu'éléments à votre portail ou à ArcGIS Online, puis les partager avec d'autres membres de votre organisation.

Pour plus d'informations sur l'utilisation de Portal for ArcGIS, reportez-vous à l'aide de Portal for ArcGIS.

Clients ArcGIS API for JavaScript

ArcGIS API for JavaScript offre les fonctionnalités de mise à jour Web et les options de personnalisation les plus avancées. Si vous maîtrisez la programmation à l'aide de cette API, vous pouvez créer un environnement sophistiqué pour vos utilisateurs sur le web en adaptant votre scénario de mise à jour à un objectif particulier ou à une stratégie organisationnelle bien précise. Par exemple, avec ArcGIS API for JavaScript, vous pouvez effectuer les tâches suivantes :

  • Mettre à jour des couches en sélection seule
  • Suivre les mises à jour (disponibles pour les géodatabases d'entreprise, et non les bases de données).
  • Contrôler l'accès aux entités à l'aide du contrôle d'accès en fonction de la propriété
  • Empêcher les utilisateurs de mettre à jour la géométrie de l'entité
  • Créer, supprimer et modifier les versions de la géodatabase à la volée
  • Mettre à jour des représentations cartographiques

Obtention de l'extrémité REST d'un service d'entités

Vous pouvez obtenir l'extrémité REST, ou URL, d'un service d'entités en accédant au service dans le répertoire de services d’ArcGIS Server. Par exemple, l'URL d'accès par défaut à un service d'entités dans le répertoire de services est http://gisserver.domain.com:6080/arcgis/rest/services/folder/service/FeatureServer. Un entier basé sur zéro peut être ajouté à l'URL pour référencer une couche spécifique du service. Par exemple, si vous terminez l'URL par /0, vous référencez la première couche du service.

ArcGIS Desktop

ArcGIS Desktop vous permet de mettre à jour les données des services d'entités. Le workflow de mise à jour utilisé dans ArcGIS Desktop est fondamentalement différent de celui appliqué pour mettre à jour un service d'entités par l'intermédiaire d'une application Web. Pour en savoir plus, reportez-vous à la rubrique A propos de la mise à jour des données de services d'entités.

Utilisation de la synchronisation avec les services d'entités

Les services d'entités contiennent des opérations qui prennent en charge les workflows de mise à jour en mode déconnecté. Dans un environnement déconnecté, le client (par exemple, un périphérique d'exécution ou mobile) peut effectuer des mises à jour en local, puis synchroniser les modifications avec le serveur, une fois reconnecté au service d'entités. Cette fonctionnalité, appelée synchronisation, est disponible via l’API REST d'ArcGIS.

Pour plus d'informations sur l'utilisation de la synchronisation avec des services d'entités, reportez-vous à la section correspondante dans l'aide de l'API REST d'ArcGIS Server.

Amélioration des performances d'affichage des services d’entités

Lorsque les clients envoient des demandes de service d'entités à ArcGIS Server, la réponse du serveur est généralement mise en cache par le navigateur et réutilisée pendant un certain temps. Toutefois, selon la manière dont votre service d’entités et les données qui lui sont associées sont utilisés dans les applications, vous pouvez envisager d'ajuster la durée pendant laquelle le navigateur utilisera une réponse figurant dans son cache. Pour cela, il convient d'ajouter une propriété nommée cacheControlMaxAge dans le fichier JSON (JavaScript Object Notation) du service.

Utilisation de la propriété cacheControlMaxAge

Les réponses des services d’entités d’ArcGIS Server incluent un en-tête de balise d’entité (ETag) et Cache-Control. La valeur de l'en-tête ETag identifie de façon unique la réponse. L'en-tête Cache-Control possède une valeur d'âge maximal qui informe le navigateur de la durée maximale pendant laquelle il peut réutiliser une réponse à partir du cache du navigateur. Cette valeur est contrôlée par la propriété cacheControlMaxAge.

Lorsqu'une demande antérieure est répétée et que l'âge maximal du cache n'a pas encore expiré, le navigateur utilise la réponse mise en cache sans envoyer la demande au serveur. Si l'âge maximal a expiré, le navigateur doit envoyer la demande au serveur et définir un en-tête IF-NONE-MATCH avec une valeur ETag associée correspondant à la réponse présente dans le cache.ArcGIS Server évalue la demande et utilise la valeur ETag pour déterminer si la réponse a changé. Si la réponse du serveur diffère de la copie stockée dans le navigateur, le serveur envoie une réponse entièrement nouvelle au navigateur. Si la réponse est identique à la copie du navigateur, le serveur avertit le navigateur de continuer à utiliser la réponse présente dans son cache.

Définition de la valeur de la propriété cacheControlMaxAge

Pour spécifier la durée pendant laquelle un navigateur est autorisé à utiliser une réponse mise en cache, définissez la propriété cacheControlMaxAge. Cette propriété peut être définie pour chaque cache de service. Le fait de réduire les éventualités où ArcGIS Server doit envoyer une réponse complète permet d’améliorer l’efficacité du cache de votre navigateur, de favoriser l’optimisation de vos applications et d’économiser la bande passante de votre réseau.

Pour les services d'entités, la valeur par défaut est zéro. Cela signifie que le navigateur renverra toujours une demande et qu'ArcGIS Server traitera cette demande et enverra une réponse complète au navigateur si le contenu a changé. Cette valeur fonctionne correctement pour la plupart des applications.

Pour les services d'entités dans lesquels les données ne changent pas fréquemment, il est recommandé d’augmenter la valeur par défaut à 30 jours (2 592 000 secondes) ou plus pour minimiser le trafic réseau.

Pour ajouter la propriété cacheControlMaxAge à votre service et spécifier sa valeur par défaut, procédez comme suit :

  1. Dans un navigateur web, ouvrez le répertoire d'administrateur d'ArcGIS Server et connectez-vous en tant qu'utilisateur doté des privilèges d'administrateur. L’URL est au format http://gisserver.domain.com:6080/arcgis/admin.
  2. Cliquez sur services et sélectionnez le service d’entités à modifier dans la liste Services. Si votre service n'apparaît pas dans cette liste, il est peut-être dans un répertoire sous le dossier Root (Racine).
  3. Sur la page du service d'entités cible, faites défiler l'affichage vers le bas et cliquez sur edit (modifier).
  4. La boîte de dialogue Service Properties (Propriétés du service) s'ouvre. Accédez à l'emplacement dans le fichier JSON où la propriété cacheControlMaxAge sera insérée. Cet emplacement dépend de l’endroit où votre service d'entités est publié :
    • Si votre service d'entités est publié sur un ArcGIS Server fédéré ou autonome, recherchez la section "extensions" de JSON. Accédez à la sous-section avec "typeName": "FeatureServer". La propriété cacheControlMaxAge passe alors dans le paramètre properties de cette sous-section.
    • Si votre service d'entités est publié sur un portail ArcGIS Enterprise, recherchez la section "jsonProperties" des propriétés du service JSON. Ajoutez la propriété cacheControlMaxAge à cette section.
  5. Ajoutez la propriété cacheControlMaxAge dans la section correspondante et spécifiez sa valeur (en secondes). Par exemple, pour définir la propriété âge maximal sur 30 jours, insérez "properties": { "cacheControlMaxAge": "2592000", }.

    Si votre service d'entités est publié sur un ArcGIS Server fédéré ou autonome :

      {
       "typeName": "FeatureServer",
       "capabilities": "Query,Create,Update,Delete,Uploads,Editing",
       "enabled": "true",
       "maxUploadFileSize": 0,
       "allowedUploadFileTypes": "",
       "properties": {
        "cacheControlMaxAge": "2592000",}
    }

    Votre service d'entités est publié sur un portail ArcGIS Enterprise :

    "jsonProperties": {**
      "currentVersion": 10.6,  "serviceDescription": "",  "maxRecordCount": 2000,  "cacheControlMaxAge": "2592000",
    }
  6. Cliquez sur Enregistrer les mises à jour.
  7. Sur la page du service d'entités, vérifiez que la propriété cacheControlMaxAge et la valeur spécifiée correspondante s'affichent dans la section Properties (Propriétés).

Saisie de code HTML dans des champs de texte

Lors de la mise à jour d'un service d'entités dans une application cliente, vous pouvez saisir du code HTML dans des champs de texte. Par exemple, lorsque vous mettez à jour une entité dans un client Web, vous pouvez saisir du texte HTML formaté dans un champ de commentaires. Par défaut, seuls les attributs et les entités HTML répertoriés dans le tableau ci-dessous peuvent être saisis dans des champs de texte de services d'entités. L'ajout d'une entité ou d'un attribut non pris en charge entraîne une erreur.

Si votre workflow de services d'entités nécessite des attributs et des entités HTML non pris en charge, vous devez désactiver la propriété Filtrer le contenu Web. Cette propriété est accessible dans la boîte de dialogue Advanced Options (Options avancées) dans ArcGIS Desktop ou ArcGIS Server Manager. Pour plus d'informations, consultez les rubriques suivantes :

Entité HTMLAttribut HTML (le cas échéant)

<a>

href, target, style

<b>

<br>

<div>

style, align

<em>

<police>

size, color, style, face

protocole http, https

src, href

<i>

<img>

src, width, height, alt, border, style

<li>

protocole mailto:

src, href

<ol>

<span>

style

<strong>

<table>

width, height, cellpadding, cellspacing, border, style

<tbody>

<td>

height, width, valign, align, colspan, rowspan, nowrap, style

<tr>

height, valign, align, style

<u>

<ul>