Intégrer du code procédural

Vous consultez la documentation d'Apigee Edge.
Consultez la documentation Apigee X.
en savoir plus

Vous pouvez ajouter du code dans des langages procéduraux tels que JavaScript, Java et Python, puis appeler ce code depuis d'autres parties d'un proxy d'API. La compatibilité avec le code procédural est conçue pour faciliter la mise en œuvre de traitements complexes de variables de flux, de pannes et de corps de requêtes et de réponses.

Avec le code procédural, vous pouvez effectuer les actions suivantes :

  • Créer ou manipuler des valeurs de corps complexes, telles que des valeurs de requête et de réponse
  • Réécrire les URL, par exemple pour masquer l'URL d'un point de terminaison cible
  • Ajouter d'autres logiques qui ne sont pas disponibles avec les règles incluses

Fonctionnement

Vous utilisez une règle spécifique au langage pour pouvoir effectuer des appels depuis un flux de proxy vers le code inclus. Pour chacun des langages compatibles, Apigee Edge inclut une règle distincte : la règle JavaScript, la règle d'appel Java et la règle de script Python.

Ce qui suit décrit ce fonctionnement de manière générale. Pour en savoir plus, consultez les références concernant les règles.

  1. Dans un fichier distinct, saisissez le code que vous allez utiliser.
  2. Dans votre code, placez le résultat du traitement du code dans une variable de flux Apigee Edge.

    Vous allez récupérer la valeur de la variable à un autre endroit de votre proxy d'API. Pour en savoir plus sur les variables de flux, consultez la page Gérer l'état du proxy avec des variables de flux.

  3. Ajoutez votre fichier (ou JAR) en tant que fichier de ressources à votre proxy d'API.

    Pour en savoir plus sur les fichiers de ressources, consultez la page Fichiers de ressources.

  4. Ajoutez la règle correspondant à la langue que vous utilisez.

    Configurez la règle pour appeler votre code à partir de l'emplacement souhaité dans le flux de votre proxy d'API.

  5. Utilisez une règle pour récupérer la valeur du code à partir de la variable de flux.

Limites

Le modèle de sécurité Apigee Edge n'autorise pas les appels système tels que les E/S réseau, les lectures/écritures de système de fichiers, les informations utilisateur actuelles, la liste des processus et l'utilisation du processeur/de la mémoire. Bien que certains de ces appels puissent être fonctionnels, ils ne sont pas acceptés et sont susceptibles d'être désactivés à tout moment. Pour assurer la compatibilité ascendante, vous devez éviter d'effectuer de tels appels dans votre code.

D'autres limites peuvent exister pour chaque langage accepté, comme décrit dans la documentation de référence correspondant au langage.

Langages acceptés

JavaScript

La compatibilité avec JavaScript inclut un modèle d'objet complet permettant de gérer les variables et les valeurs spécifiques à un proxy d'API. Pour en savoir plus, consultez la page Modèle d'objet JavaScript.

Pour obtenir des informations de référence sur les règles et des exemples, consultez les pages Règle JavaScript et Proxys de l'API de programmation avec JavaScript. Pour obtenir des exemples de code, recherchez dans la liste d'exemples ceux qui incluent JavaScript.

Java

Utilisez la règle d'appel Java pour appeler du code Java à partir du flux de votre proxy. La documentation de référence sur les règles inclut des exemples.

Les ressources suivantes sont également susceptibles de vous intéresser :

Pour obtenir un exemple de code, recherchez les exemples qui incluent Java dans la page Liste d'exemples.

Python

Utilisez la règle de script Python pour appeler du code Python.

Pour obtenir un exemple de code, recherchez les exemples qui incluent Python dans la page Liste d'exemples.