Les modèles WebServices

Généralités

Un modèle Webservice permet de se connecter à :

  • Un WebService de type REST (pour lesquels données sont accessibles via une seule URL)
  • Renvoyant des données au formats JSON, XML ou CSV
  • Ayant un protocole d'identification login/password ou OAuth 2.0

La configuration d'une connexion à un WebService doit respecter la documentation du WebService : chaque WebService a ses propres règles de nommage, d'authentification, de pagination, et de structure des données retournées.

Paramétrage des modèles

Important

Le nom du modèle étant utilisé comme nom de table (et donc dans la requête pseudo SQL), il ne faut pas utiliser ne nom réservé, de caractère spéciaux, ou d'espace dans les noms de modèle.

Complément d'URL

  • Complément d'URL : ce paramètre modifie la propriété "URL" de la ConnexionString définie dans la connexion du modèle.

    L'URL finale est construite à partir de la concaténation de l'URI de la connexion REST avec complément d'url d'accès aux données.

    Cette modification permet de factoriser la partie commune d'une URL de connexion au niveau de la connexion, et de ne définir dans le modèle que la partie dépendante des données à acceder

Chaine de connexion (ConnexionString)

  • Cette propriété permet de personnaliser la ConnexionString de la connexion pour le modèle.

    Il est possible d'ajouter de nouveaux paramètres, ou d'écraser un/des paramètre(s) de la connexion.

Les paramètres

  • Ils s'ajoutent à l'URL d'accès aux données.

  • Ces paramètres sont consolidés avec ceux de la connexion WebService.

  • Lorsque des paramètres ont le même nom, ceux du modèle écrasent ceux de la connexion.

Tableau 3.1. Exemples de paramètres ConnexionString :

Libellé

Valeur

Description

CustomHeaders

par exemple :Authorization:

permet l'ajout de paramètres supplémentaires dans le header de la requête.

CustomURLParams

par exemple : fields=xxx, xxxx, xxxx

permet l'ajout de paramètres supplémentaires dans l'url de la requête.

Timeout

par exemple : 60

permet de configurer le délai à attendre si le nombre maximum de requêtes est atteint (Code erreur 429 : Too many requests). Ce délai a une valeur par défaut de 60 secondes et il y aura 4 essais avant de retourner une erreur.

Other

par exemple : TableName=NomdeLaTable

Permet de spécifier des paramètres.

Par Exemple : Le nom de la table généré automatiquement portera le nom du modèle. Il est possible de paramétrer manuellement le nom de la table.


Avertissement

Le renommage des tables du mapping d'un modèle sur une Connexion REST est impossible depuis le menu contextuel ou par raccourci clavier.

Types de paginations

MyReport gère plusieurs types de paginations :

  • Aucune : Le Webservice ne nécessite aucune pagination (toutes les données sont retournées lors d'un seul appel).

  • Numéro de page: Le Webservice nécessite un paramètre qui définit le numéro de la page demandée. Il est possible de choisir si le premier appel à besoin de ce paramètre.

  • Nombre d'éléments par page : Le Webservice nécessite de savoir à partir de quel élément il doit retourner des données. L'offset à définir est utilisé pour savoir à partir de quel élément la page doit commencer. A chaque appel, l'offset est augmenté de la valeur choisie. Il est aussi possible de choisir si l'offset doit être utilisé lors du premier appel, et avec quelle valeur.

  • URL suivante: Le Webservice fournit l'URL à appeler pour la prochaine page.

    MyReport doit connaitre la propriété à lire pour récupérer l'URL des pages suivantes.

    Attention

    Si le nom de la propriété est mal saisi, il n'y aura pas d'erreur, si la propriété n'existe pas dans la réponse, cela signifie simplement que c'était la dernière page de données.

    Le chemin d'accès à cette propriété n'est pas dépendant du nœud racine qui peut être sélectionné.

  • Pagination en Numéro de page :

    Le Webservice nécessite un paramètre qui définit le numéro de la page demandée.

    • Type de pagination : Numéro de page
    • Nom du paramètre de page : paramètre qui définit le numéro de la page demandée
    • Nom du paramètre du nombre d'éléments par page :
    • Nombre d'éléments par page : la valeur par défaut est fixée à 1
  • Pagination en Nombre d'éléments par page :

    Le Webservice nécessite de savoir à partir de quel élément il doit retourner des données.

    • Type de pagination : Nombre d'éléments par page
    • Nom du paramètre d'offset : L'offset à définir est utilisé pour savoir à partir de quel élément la page doit commencer
    • Nom du paramètre du nombre d'éléments par page : A chaque appel, l'offset est augmenté de la valeur choisie.
    • Nombre d'éléments par page : la valeur par défaut est fixée à 1
  • Pagination en URL Suivante :

    Le Webservice fournit l'URL à appeler pour la prochaine page. MyReport doit connaitre la propriété à lire pour récupérer l'URL des pages suivantes.

    • Type de pagination : URL Suivante
    • Chemin d'URL : propriété à lire pour récupérer l'URL des pages suivantes (p.e. /link)
    • Attention

      Si le nom de la propriété est mal saisi, il n'y aura pas d'erreur, si la propriété n'existe pas dans la réponse, cela signifie simplement que c'était la dernière page de données.

      Le chemin d'accès à cette propriété n'est pas dépendant du nœud racine qui peut être sélectionné.

ghostghostghostghostghost
loading table of contents...