Ajout d'une URL HTTP ou HTTPS comme élément dorsal de passerelle d'API

Découvrez comment créer un déploiement d'API pour accéder aux URL HTTP et HTTPS avec la passerelle d'API.

Une exigence courante consiste à créer une API avec l'URL HTTP ou HTTPS d'un service dorsal et une passerelle d'API offrant un accès frontal à l'URL d'élément dorsal.

Ayant utilisé le service Passerelle d'API pour créer une passerelle d'API, vous pouvez créer un déploiement d'API pour accéder aux URL HTTP et HTTPS.

L'URL HTTP ou HTTPS que vous spécifiez pour le service dorsal peut être :

  • L'URL d'un service accessible publiquement sur Internet.
  • L'URL d'un service Oracle Cloud Infrastructure (par exemple, le service des fonctions pour OCI).
  • L'URL d'un service dans votre propre réseau privé ou interne (par exemple, connecté au réseau en nuage virtuel par FastConnect).

L'URL que vous indiquez dans la spécification de déploiement d'API pour identifier le service dorsal HTTP ou HTTPS peut inclure le nom d'hôte ou l'adresse IP de l'hôte. Si vous indiquez le nom d'hôte, utilisez la propriété Options DHCP du sous-réseau de la passerelle d'API pour contrôler comment les noms d'hôte inclus dans la spécification de déploiement d'API sont résolus en adresses IP lors de l'exécution :

  • Si le nom d'hôte d'un service dorsal est publié publiquement sur Internet ou s'il appartient à une instance dans le même réseau en nuage virtuel, sélectionnez un jeu d'options DHCP pour le sous-réseau de la passerelle d'API qui spécifient le résolveur Internet et de réseau en nuage virtuel fourni par Oracle comme type de DNS. Il s'agit de la valeur par défaut si vous ne sélectionnez pas explicitement un jeu d'options DHCP.
  • Si le nom d'hôte est pour un service dorsal dans votre propre réseau privé ou interne, sélectionnez un jeu d'options DHCP pour le sous-réseau de la passerelle d'API qui spécifient le résolveur personnalisé comme type de DNS et l'URL d'un serveur DNS approprié pouvant résoudre le nom d'hôte en une adresse IP.

Notez que vous pouvez modifier les détails du serveur DNS dans le jeu d'options DHCP spécifié pour le sous-réseau d'une passerelle d'API. La passerelle d'API sera reconfigurée pour utiliser les détails du serveur DNS mis à jour dans les deux heures qui suivent. Pour plus d'informations sur la résolution des noms d'hôte en adresses IP, voir DNS dans le réseau en nuage virtuel et Options DHCP.

Vous pouvez ajouter des éléments dorsaux HTTP et HTTPS à une spécification de déploiement d'API comme suit :

  • En utilisant la console.
  • En modifiant un fichier JSON.

Utilisation de la console pour ajouter des éléments dorsaux HTTP ou HTTPS à une spécification de déploiement d'API

Pour ajouter un élément dorsal HTTP ou HTTPS à une spécification de déploiement d'API à l'aide de la console :

  1. Créez ou mettez à jour un déploiement d'API à l'aide de la console, sélectionnez l'option À partir de zéro et entrez les détails dans la page Informations de base.

    Pour plus d'informations, voir Déploiement d'une API sur une passerelle d'API en créant un déploiement d'API et Mise à jour d'une passerelle d'API.

  2. Dans la page Authentification, spécifiez les options d'authentification.

    Pour plus d'informations sur les options d'authentification, voir Ajout de l'authentification et de l'autorisation aux déploiements d'API.

  3. Dans la page Routes, créez une route et spécifiez les données suivantes :

    • Chemin : Chemin des appels d'API utilisant les méthodes indiquées au service dorsal. Notez que le chemin de routage que vous spécifiez :

    • Méthodes : Une ou plusieurs méthodes acceptées par le service dorsal. Par exemple, GET, PUT.
    • Ajouter un seul serveur dorsal ou Ajouter plusieurs serveurs dorsaux : Indique si toutes les demandes doivent être acheminées vers le même serveur dorsal ou si elles doivent être acheminées vers différents serveurs dorsaux en fonction de la variable de contexte et des règles que vous entrez.

      Ces instructions supposent que vous voulez utiliser un seul élément dorsal. Sélectionnez donc Ajouter un seul élément dorsal. Sinon, si vous voulez utiliser des éléments dorsaux différents, sélectionnez Ajouter plusieurs éléments dorsaux et suivez les instructions sous Utilisation de la console pour ajouter une sélection d'élément dorsal dynamique à une spécification de déploiement d'API.

    • Type dorsal : Type du service dorsal comme HTTP.
    • URL : URL à utiliser comme service dorsal, au format <protocol>://<host>:<port>/<path> où :

      • <protocol> représente http ou https.
      • <host> est le nom d'hôte ou l'adresse IP de l'hôte du service dorsal. Par exemple api.weather.gov. Si vous indiquez un nom d'hôte, utilisez la propriété Options DHCP du sous-réseau de la passerelle d'API pour contrôler comment les noms d'hôte sont résolus en adresses IP lors de l'exécution.
      • <port> est facultativement un numéro de port.
      • <path> est facultativement un sous-répertoire ou un fichier sur l'hôte où le service dorsal se trouve.

        Notez que <path> ne doit pas contenir de paramètres directement, mais qu'il peut contenir des variables de contexte. Pour plus d'informations et des exemples illustrant l'utilisation de variables de contexte pour remplacer les paramètres de chemin, d'interrogation et d'en-tête dans le chemin, voir Ajout de variables de contexte aux politiques et aux définitions d'élément dorsal HTTP.

      Par exemple, "url": "https://api.weather.gov".

    • Temporisation d'établissement de connexion en secondes : Facultativement, une valeur à virgule flottante indiquant la durée (en secondes) à autoriser lors de l'établissement d'une connexion avec le service dorsal. Le minimum est 1,0, le maximum est 75,0. Si la valeur n'est pas indiquée, la valeur par défaut est 60,0 secondes.
    • Temporisation pour la transmission d'une demande en secondes : Facultativement, une valeur à virgule flottante indiquant la durée (en secondes) à autoriser pour la transmission d'une demande au service dorsal. Le minimum est 1,0, le maximum est 300,0. Si la valeur n'est pas indiquée, la valeur par défaut est 10,0 secondes.
    • Temporisation pour la lecture de la réponse en secondes : Facultativement, une valeur à virgule flottante indiquant la durée (en secondes) à autoriser lors de la lecture d'une réponse du service dorsal. Le minimum est 1,0, le maximum est 300,0. Si la valeur n'est pas indiquée, la valeur par défaut est 10,0 secondes.
    • Désactiver la vérification SSL : Indique s'il est possible de désactiver la vérification SSL lors de la communication avec le service dorsal. Par défaut, cette option n'est pas sélectionnée.

    Dans cet exemple, la route définit un service de météo comme étant un élément dorsal HTTP.

    Champ : Entrez :
    Chemin : /weather
    Méthodes : GET
    Type de service dorsal : HTTP
    URL : https://api.weather.gov
    Temporisation d'établissement de connexion en secondes : 45
    Temporisation pour la transmission d'une demande en secondes : 15
    Temporisation pour la lecture de la réponse en secondes : 15
    Désactiver la vérification SSL : (Non sélectionné)
  4. (Facultatif) Sélectionnez Autre route pour entrer les détails des routes supplémentaires.
  5. Sélectionnez Suivant pour vérifier les détails que vous avez entrés pour le déploiement d'API.
  6. Sélectionnez Créer ou enregistrer les modifications pour créer ou mettre à jour le déploiement d'API.
  7. (Facultatif) Vérifiez que l'API a été déployée avec succès en l'appelant (voir Appel d'une API déployée sur une passerelle d'API).

Modification d'un fichier JSON pour ajouter des éléments dorsaux HTTP ou HTTPS à une spécification de déploiement d'API

Pour ajouter un élément dorsal HTTP ou HTTPS à une spécification de déploiement d'API dans un fichier JSON :

  1. Dans votre éditeur JSON préféré, créez une spécification de déploiement d'API (voir Création d'une spécification de déploiement d'API) au format suivant :

    {
      "requestPolicies": {},
      "routes": [
        {
          "path": "<api-route-path>",
          "methods": ["<method-list>"],
          "backend": {
            "type": "HTTP_BACKEND",
            "url": "<identifier>",
            "connectTimeoutInSeconds": <seconds>,
            "readTimeoutInSeconds": <seconds>,						
            "sendTimeoutInSeconds": <seconds>,
            "isSSLVerifyDisabled": <true|false>
          },
          "requestPolicies": {},
        }
      ]
    }

    où :

    • "requestPolicies" spécifie des politiques facultatives pour contrôler le comportement d'un déploiement d'API. Si vous voulez appliquer des politiques à toutes les routes d'une spécification de déploiement d'API, placez les politiques en dehors de la section routes. Si vous voulez appliquer les politiques uniquement à une route particulière, placez les politiques dans la section routes. Voir Ajout de politiques de demande et de réponse aux spécifications de déploiement d'API.
    • <api-route-path> spécifie un chemin pour les appels d'API utilisant les méthodes indiquées au service dorsal. Notez que le chemin de routage que vous spécifiez :

    • <method-list> spécifie une ou plusieurs méthodes acceptées par le service dorsal, séparées par des virgules. Par exemple, "GET, PUT".
    • "type": "HTTP_BACKEND" indique que l'élément dorsal de la passerelle d'API est une URL HTTP ou HTTPS.
    • "url: "<identifier>" indique l'URL à utiliser comme service dorsal, au format <protocol>://<host>:<port>/<path> où :

      • <protocol> représente http ou https.
      • <host> est le nom d'hôte ou l'adresse IP de l'hôte du service dorsal. Par exemple api.weather.gov. Si vous indiquez un nom d'hôte, utilisez la propriété Options DHCP du sous-réseau de la passerelle d'API pour contrôler comment les noms d'hôte sont résolus en adresses IP lors de l'exécution.
      • <port> est facultativement un numéro de port.
      • <path> est facultativement un sous-répertoire ou un fichier sur l'hôte où le service dorsal se trouve.

        Notez que <path> ne doit pas contenir de paramètres directement, mais qu'il peut contenir des variables de contexte. Pour plus d'informations et des exemples illustrant l'utilisation de variables de contexte pour remplacer les paramètres de chemin, d'interrogation et d'en-tête dans le chemin, voir Ajout de variables de contexte aux politiques et aux définitions d'élément dorsal HTTP.

      Par exemple, "url": "https://api.weather.gov".

    • "connectTimeoutInSeconds": <seconds> est une valeur à virgule flottante facultative indiquant la durée (en secondes) à autoriser lors de l'établissement d'une connexion au service dorsal. Le minimum est 0,0, le maximum est 75,0. Si la valeur n'est pas indiquée, la valeur par défaut est 60,0 secondes.
    • "readTimeoutInSeconds": <seconds> est une valeur à virgule flottante facultative indiquant la durée (en secondes) à autoriser lors de la lecture d'une réponse du service dorsal. Le minimum est 0,0, le maximum est 300,0. Si la valeur n'est pas indiquée, la valeur par défaut est 10,0 secondes.
    • "sendTimeoutInSeconds": <seconds> est une valeur à virgule flottante facultative indiquant la durée (en secondes) à autoriser lors de la transmission d'une demande au service dorsal. Le minimum est 0,0, le maximum est 300,0. Si la valeur n'est pas indiquée, la valeur par défaut est 10,0 secondes.
    • "isSSLVerifyDisabled": <true|false> est une valeur booléenne optionnelle (true ou false) indiquant si la vérification SSL doit être désactivée lors de la communication avec le service dorsal. Si la valeur n'est pas indiquée, la valeur par défaut est false.

    Par exemple, la spécification de déploiement d'API de base suivante définit un service de météo comme élément dorsal HTTP :

    {
      "routes": [
        {
          "path": "/weather",
          "methods": ["GET"],
          "backend": {
            "type": "HTTP_BACKEND",
            "url": "https://api.weather.gov",
            "connectTimeoutInSeconds": 45,
            "readTimeoutInSeconds": 15,						
            "sendTimeoutInSeconds": 15,
            "isSSLVerifyDisabled": false
          }
        }
      ]
    }
  2. Enregistrez le fichier JSON contenant la spécification de déploiement d'API.
  3. Utilisez comme suit la spécification de déploiement d'API lorsque vous créez ou mettez à jour un déploiement d'API :

    • En spécifiant le fichier JSON dans la console lorsque vous sélectionnez l'option Charger une API existante.
    • En spécifiant le fichier JSON dans une demande à l'API REST du service Passerelle d'API.

    Pour plus d'informations,voir Déploiement d'une API sur une passerelle d'API en créant un déploiement d'API.

  4. (Facultatif) Vérifiez que l'API a été déployée en l'appelant (voir Appel d'une API déployée sur une passerelle d'API).