Rubrique précédente: WS_API : application API de services WebRubrique suivante: Applications système


WS_API_SAMPLE : exemple d'application API de services Web

Dernière version : 1.0.7-1

L'application WS_API_SAMPLE fournit un exemple de procédure pour la création d'une application de portail simple qui accède à l'application API de services Web de CA AppLogic®, c'est-à-dire WS_API. Cette application est fournie pour guider les développeurs de portails et d'applications qui envoient des requêtes API Web à une instance de l'application WS_API en cours d'exécution sur une grille CA AppLogic®.

Périmètre

Nom de propriété

Type

Description

iface.in

interface

Il s'agit de l'adresse IP à laquelle un utilisateur peut accéder au portail WS_API_SAMPLE. Cette propriété est obligatoire.

iface.net

interface

Il s'agit de l'adresse IP utilisée par l'application WS_API_SAMPLE pour envoyer des requêtes HTTP ou HTTPS à l'application WS_API. Cette propriété est obligatoire.

iface.vpn

interface

Il s'agit de l'adresse IP utilisée par l'application WS_API_SAMPLE pour envoyer des requêtes HTTP à l'application WS_API via un tunnel VPN sécurisé. Cette propriété est obligatoire.

dns1

IP

Adresse IP d'un serveur DNS pour les résolutions de nom d'hôte. Cette propriété est obligatoire.

dns2

IP

Adresse IP du serveur DNS secondaire utilisé pour les résolutions de nom d'hôte. Valeur par défaut : 0.0.0.0

api_ports

Chaîne

Liste séparée par des virgules des ports sur lesquels vous pouvez accéder à l'application WS_API_SAMPLE. Valeur par défaut : vide

allowed_hosts

Chaîne

Adresse IP ou plage d'adresses IP au format CIDR autorisées à accéder à WS_API_SAMPLE. Valeur par défaut : 0.0.0.0/0 (toutes autorisées).

Important : Les adresses IP configurées dans les propriétés iface.vpn, iface.in et iface.net doivent être des adresses IP disponibles sur votre grille CA AppLogic®. Elles figurent, avec les serveurs DNS, dans le tableau de bord de votre grille.

Ressources

Ressources

Min.

Max.

Valeur par défaut

UC

0.45

72

1.05

Mémoire

704 Mo

132 Go

1,343 Go

Bande passante

6 Mbit/s

12 Gbit/s

1,151 Gbit/s

Volumes

L'application BackupHelper comporte le volume suivant :

Volume

Description

content

Système de fichiers contenant les scripts, les journaux et l'interface Web. Ce volume ne doit pas être modifié.

Présentation

L'application WS_API_SAMPLE doit être configurée pour accéder à l'instance de WS_API s'exécutant sur une grille CA AppLogic®. Avant de lancer cette application, démarrez une instance de l'application WS_API comme expliqué ici. Vous pouvez alors configurer WS_API_SAMPLE concernant des propriétés qui sont définies dans l'instance de l'application WS_API.

Pour configurer WS_API_SAMPLE

  1. Modifiez le script de portail résidant dans le sous-répertoire bin du volume de portail de l'application et définissez la variable IP dans le script sur :
  2. Définissez la variable IP sur iface.in pour envoyer des requêtes HTTP ou HTTPS à l'application WS_API ou sur aux pour envoyer des demandes HTTP via un tunnel VPN.
  3. Modifiez les informations VDC pour qu'elles correspondent à vdcs.conf sur l'application WS_API. Par exemple :
    # EDIT VDC info here
    <p>
    <label for="location">Select Location: </label>
    <select name="location">
    <option value="dallas">Dallas, TX, USA</option>
    <option value="sandiego">San Diego, CA, USA</option>
    <option value="japan">Tokyo, Japan</option>
    <option value="netherlands">Amsterdam, Netherlands</option>
    </select>
    </p>
    L'opération susmentionnée doit modifier les VDC qui sont configurés dans l'application WS_API. Si mygrid1 et mygrid2 sont deux VDC s'exécutant à Dallas et à San Diego respectivement, alors, le code HTML ci-dessus doit être remplacé par : 
    # EDIT VDC info here
    <p>
    <label for="location">Select Location: </label>
    <select name="location">
    <option value="mygrid1">Dallas, TX, USA</option>
    <option value="mygrid2">San Diego, CA, USA</option>
    </select>
    </p>
    

Vous pouvez configurer WS_API_SAMPLE pour travailler dans un des modes suivants :

Utilisation d'HTTP

Dans ce mode, le portail utilise l'interface HTTP standard pour envoyer les requêtes API à l'instance de l'application WS_API.
Par exemple, curl http://iface.in/api/v1/app/list?vdc=mygrid1.

Utilisation d'HTTPS

Dans ce mode, le portail utilise l'interface HTTP sécurisée, c'est-à-dire HTTPS, pour envoyer les requêtes API à l'instance de l'application WS_API. Pour que cela fonctionne, la clé api_client.pem doit être copiée dans le sous-répertoire de clés sur le volume de portail de l'application WS_API_SAMPLE.
Par exemple, curl -k -E /mnt/fs/keys/api_client.pem "https://iface.in/api/v1/app/list?vdc=mygrid1".

Utilisation d'un tunnel VPN

Dans ce mode, le portail utilise l'interface HTTP standard pour envoyer les requêtes API à l'instance de l'application WS_API via un tunnel VPN sécurisé. Pour créer le tunnel, il vous suffit de copier les éléments client.xxxxxxxxxxxxxxxxxxxxxxxxx.key, client.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.crt et ca.crt générés dans le sous-répertoire de serveur du volume vpn_key de l'instance de l'application WS_API vers le sous-répertoire client du volume vpn_key de l'application WS_API_SAMPLE. Un tunnel sécurisé est créé une fois que le composant out_vpn est lancé.
Par exemple, bouclez "http://aux/api/v1/app/list?vdc=mygrid1".

Pour accéder au portail via un navigateur Web, pointez le navigateur vers l'adresse http://iface.in/api/portal.

Architecture de l'application

L'infrastructure de l'application "WS_API_SAMPLE" des services Web de CA AppLogic® est illustrée ci-dessous :

Elle contient les composants suivants.

API Sample App

Notes

Logiciels libres et logiciels tiers utilisés

Les logiciels tiers libres suivants sont installés sur le volume de portail.

Logiciel

Version

Modifié

Licence

Notes

JSON

2.15

Non

Artistic

N/D

IPC-Run

0.80

Non

GPLv2

N/D

XML-Simple

2.18

Non

Artistic

N/D

Sort-Naturally

1.02

Non

Artistic

N/D