Le type de flux Interrogation HTTP dans ArcGIS Velocity envoie une demande HTTP à l’URL spécifiée. Cette demande collecte toutes les données pouvant être extraites dans un navigateur Web, en accédant à la même URL.
Exemple
Les valeurs de capteur mises à jour sont chargées à partir d’un flux API toutes les minutes.
Remarques sur l’utilisation
- Le flux interroge l’extrémité HTTP pour charger les données selon la fréquence définie à l’étape Feed Polling Interval (Intervalle d’interrogation de flux) de l’assistant de configuration.
- L’extrémité HTTP doit être accessible en externe sur Internet.
- La taille de la réponse HTTP ou du fichier interrogé ne doit pas être supérieure à 16 Mo. Si la taille des données interrogées dépasse 16 Mo, les entités ne sont pas ingérées.
- Lorsqu’un intervalle d’interrogation est défini, les interrogations ont lieu à intervalles réguliers à partir de l’heure de démarrage du flux. Par exemple, si un flux est configuré pour interroger les données toutes les cinq minutes, et qu’il démarre à 8:03, la première demande de données intervient à 8:05, la suivante à 8:10, et ainsi de suite.
- Faites attention lorsque vous spécifiez la valeur Feed Polling Interval (lntervalle d’interrogation de flux). Vous devez vous assurer que l’extrémité HTTP interrogée est en mesure de renvoyer des réponses dans l’intervalle d’interrogation spécifié. Il est recommandé de tester le temps de réponse d’une demande adressée au site Web, en utilisant la même demande que celle appliquée lors de la configuration du flux. La durée de l’intervalle d’interrogation ne doit pas être inférieure au temps de réponse moyen à cette demande adressée au site Web. Pour plus d’informations, voir Planifier un intervalle d’interrogation de flux.
- Les paramètres POST body (Corps POST), URL parameters (Paramètres URL) et Custom headers (En-têtes personnalisés) peuvent utiliser des variables globales de flux. Les variables globales de flux sont converties en heure epoch (millisecondes depuis le 1er janvier 1970 UTC). Vous trouverez ci-après les variables d’analyse de flux et leur signification.
- $feed.FeedStartTime : heure à laquelle le flux a démarré.
- $feed.FeedScheduledStartTime : heure à laquelle la prochaine récurrence du flux est planifiée.
- $feed.FeedLastScheduledStartTime : heure à laquelle la dernière récurrence du flux était planifiée.
- Les niveaux de licence d’abonnement ArcGIS Velocity présentent des limites quant au volume de données pouvant être ingéré par un flux, comme l’indique le résumé ci-dessous. Si des flux excèdent la limite d’ingestion de votre niveau de licence, un message est écrit dans les journaux et un e-mail est envoyé à l’utilisateur pour l’informer que la limite a été atteinte. Si l’ingestion des données demeure supérieure à la limite pendant plus d’une heure, le flux s’arrête. Pour plus d’informations sur les licences ArcGIS Velocity, reportez-vous à la rubrique Licences. Le cas échéant, contactez votre représentant Esri ou le support technique Esri pour identifier les niveaux de licence Velocity prenant en charge vos processus.
- Standard : ingestion et traitement des données à 25 Ko/seconde (environ 100 événements par seconde).
- Advanced : ingestion et traitement des données à 250 Ko/seconde (environ 1 000 événements par secondes).
- Dedicated : ingestion et traitement des données à 2 500 Ko/seconde (environ 10 000 événements par seconde).
Après avoir configuré les paramètres de connexion du flux, consultez la rubrique Configurer les données en entrée pour savoir comment définir la structure et les paramètres clés.
Authentification OAuth
Le type de flux Interrogation HTTP prend en charge l’authentification à l’aide d’OAuth 2.0 pour les points d’extrémité HTTP utilisant les types d’autorisation de serveur à serveur ou via un mot de passe. Ces types d’autorisation OAuth appliquent un schéma qui comprend la configuration d’une demande HTTP pour récupérer un jeton d’accès et, éventuellement, la configuration d’une demande pour utiliser un jeton d’actualisation afin d’extraire de nouveaux jetons d’accès. Ces demandes s’ajoutent à la demande de données qui est normalement configurée dans le cadre de tout type de flux Interrogation HTTP.
Lors de la configuration de la demande de jeton d’accès, vous êtes invité à identifier le jeton d’accès et les champs facultatifs de jeton d’actualisation et de clé JSON d’expiration dans la réponse du serveur d’autorisation OAuth. Si une expiration est sélectionnée, vous devez en définir le type (durée ou horodatage) et les unités.
Si un jeton d’actualisation a été identifié dans la demande de jeton d’accès, vous devez utiliser la variable globale $refreshToken pour définir où le jeton d’actualisation sera utilisé dans la configuration de la demande de jeton d’actualisation.
Enfin, lorsque vous revenez à la configuration de la demande de données, vous devez utiliser la variable globale $accessToken pour définir l’endroit où le jeton d’accès sera utilisé. Souvent dans un en-tête Authorization personnalisé avec la valeur Bearer $accessToken. $accessToken peut également être utilisé dans le corps POST, les paramètres URL et l’URL elle-même (par exemple, https://<<company.domain>>/$accessToken/<<method>>?<<url params>>).
Lors de son exécution, un flux pour lequel l’authentification OAuth est configurée gère le jeton d’accès et traite en conséquence les erreurs survenant lors de l’extraction des données. Par exemple, si une demande de jeton d’actualisation et une expiration sont définies, le flux utilise le jeton d’actualisation qui a été extrait initialement avec la demande de jeton d’accès pour récupérer un nouveau jeton, si le premier est arrivé à expiration.
Tenez compte des points suivants lorsque vous créez un flux avec OAuth :
- Lors de la création, plusieurs demandes sont envoyées à un serveur d’autorisation et au point d’extrémité associé. Certaines API limitent le débit de certaines requêtes, ce qui peut affecter la création du flux.
- Pour des raisons de sécurité, les corps POST des demandes de jeton d’accès et d’actualisation doivent être reconfigurés lors de la modification des paramètres d’authentification.
Paramètres
Paramètre | Description | Type de données |
---|---|---|
URL | URL complète de l’extrémité HTTP accessible en externe. Ce paramètre prend en charge la variable globale $accessToken. | Chaîne |
Méthode HTTP | Méthode HTTP utilisée pour l’extrémité HTTP, à savoir GET ou POST. Si vous sélectionnez POST, vous pouvez spécifier un corps de message. | Chaîne |
Corps POST | Corps de message à inclure lors de l’envoi d’une demande HTTP POST. Permet de choisir entre x-www-form-urlencoded et d’autres types de contenu textuel générique. Définit également l’en-tête Content-type. Ce paramètre s’applique uniquement si le paramètre HTTP method (Méthode HTTP) est défini sur POST (POST). Ce paramètre prend en charge les variables globales $accessToken et de flux. | Chaîne |
Authentification | Type d’authentification utilisé pour l’accès à l’extrémité HTTP. Les options d’authentification sont None (Aucune), Basic (De base), Certificate (Certificat) et OAuth. | Chaîne |
Nom d\\’utilisateur | Nom d’utilisateur pour l’accès à l’extrémité HTTP. Ce paramètre ne s’applique que si le paramètre Authentication (Authentification) est défini sur Basic (De base). | Chaîne |
Mot de passe | Mot de passe pour l’accès à l’extrémité HTTP. Ce paramètre ne s’applique que si le paramètre Authentication (Authentification) est défini sur Basic (De base). | Mot de passe |
URL de certificat | Emplacement de l’URL du certificat client pour l’accès à l’extrémité HTTP. Ce paramètre ne s’applique que si le paramètre Authentication (Authentification) est défini sur Certificate (Certificat). | Chaîne |
Mot de passe | Mot de passe du certificat client, s’il est défini. Ce paramètre ne s’applique que si le paramètre Authentication (Authentification) est défini sur Certificate (Certificat). | Mot de passe |
Custom headers (En-têtes personnalisés) | En-têtes personnalisés facultatifs à inclure dans la demande HTTP envoyée à l’extrémité HTTP spécifiée. Par exemple, des en-têtes personnalisés peuvent être utilisés pour spécifier une clé d’API tierce ou un en-tête d’autorisation. Ce paramètre prend en charge les variables globales $accessToken et de flux. | Paire clé-valeur |
Paramètres URL | Paramètres URL facultatifs à inclure dans l’URL de la demande HTTP envoyée à l’extrémité HTTP. Les paramètres peuvent également être définis dans le paramètre URL (URL), mais les paramètres URL saisis ici écrasent tout paramètre correspondant spécifié pour le paramètre URL (URL). Les paramètres définis ici seront toujours codés par URL. Ce paramètre prend en charge les variables globales $accessToken et de flux. | Paire clé-valeur |
Interrogation longue | ArcGIS Velocity interroge le serveur Web et garde une connexion ouverte jusqu’à l’envoi de nouvelles données par le serveur. Lorsque Velocity reçoit des données, une nouvelle demande est immédiatement envoyée. Remarque :Cette configuration de serveur Web est unique et n’est pas utilisée par la plupart des serveurs Web. | Booléen |
Considérations et limitations
- L’extrémité HTTP doit être accessible en externe sur Internet.
- La taille de la réponse ou du fichier HTTP interrogé ne peut pas être supérieure à 16 Mo.
- La durée de l’intervalle d’interrogation ne doit pas être inférieure au temps de réponse moyen à cette demande adressée à l’extrémité HTTP. Pour plus d’informations, voir Planifier un intervalle d’interrogation de flux.
- Il est recommandé d’utiliser ce type de flux pour les données en temps réel avec une vitesse d’environ 3 000 entités ponctuelles par seconde ou moins. Les vitesses prises en charge varient selon le nombre d’attributs de données, le format des données entrantes et la complexité des entités polylignes ou surfaciques.
Vous avez un commentaire à formuler concernant cette rubrique ?