Включение процессуального кодекса

Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee
X.info

Вы можете добавлять код на процедурных языках, таких как JavaScript, Java и Python, а затем вызывать этот код из других частей API-прокси. Поддержка процедурного кода призвана упростить реализацию сложной обработки переменных потока, ошибок, а также тел запросов и ответов.

С помощью процедурного кода вы можете:

  • Создавайте или изменяйте сложные значения в теле запроса, такие как значения запроса и ответа.
  • Перезаписывать URL-адреса, например, для маскировки URL-адреса целевой конечной точки.
  • Добавьте другую логику, недоступную при использовании уже включенных политик.

Как это работает

Для выполнения вызовов из прокси-потока к вашему включенному коду используется политика, специфичная для данного языка. Для каждого из поддерживаемых языков Apigee Edge включает отдельную политику: политика JavaScript , политика вызовов Java и политика скриптов Python .

Ниже в общих чертах описан один из способов реализации этой системы. Для получения более подробной информации обязательно ознакомьтесь с документами, указанными в политике компании.

  1. В отдельном файле напишите код, который вы собираетесь использовать.
  2. В вашем коде поместите результат обработки кода в переменную потока Apigee Edge.

    Значение переменной вы получите в другом месте вашего API-прокси. Дополнительную информацию о переменных потока см. в разделе «Управление состоянием прокси с помощью переменных потока» .

  3. Добавьте свой файл (или JAR-файл) в качестве файла ресурсов в ваш API-прокси.

    Дополнительную информацию о файлах ресурсов см. в разделе «Файлы ресурсов» .

  4. Добавьте политику, соответствующую используемому вами языку.

    Настройте политику таким образом, чтобы вызов вашего кода выполнялся из нужного места в потоке работы вашего API-прокси.

  5. Используйте политику для получения значения кода из переменной потока.

Ограничения

Модель безопасности Apigee Edge не допускает системных вызовов, таких как сетевой ввод-вывод, чтение/запись файловой системы, информация о текущем пользователе, список процессов и использование ЦП/памяти. Хотя некоторые из таких вызовов могут быть функциональными, они не поддерживаются и могут быть активно отключены в любой момент. Для обеспечения обратной совместимости следует избегать подобных вызовов в коде.

Для каждого поддерживаемого языка могут существовать и другие ограничения, описанные в соответствующем справочнике по политике для данного языка.

Поддерживаемые языки

JavaScript

Поддержка JavaScript включает в себя полную объектную модель для обработки переменных и значений, специфичных для API-прокси. Подробнее см. в разделе «Объектная модель JavaScript» .

Для получения справочной информации о политиках и примеров см. разделы «Политики JavaScript» и «Прокси API программирования с использованием JavaScript» . Примеры кода можно найти в списке примеров , содержащих JavaScript.

Java

Используйте политику Java Callout для выполнения вызовов к Java-коду из потока вашего прокси-сервера. В разделе справочника по политикам приведены примеры.

Вас также могут заинтересовать следующие темы:

Для поиска примеров кода найдите в списке примеров те, которые содержат Java-код.

Python

Используйте политику Python Script для вызова кода Python.

Для поиска примеров кода воспользуйтесь списком примеров , в котором есть код на Python.