Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
Вы можете добавлять код на процедурных языках, таких как JavaScript, Java и Python, а затем вызывать этот код из других частей API-прокси. Поддержка процедурного кода призвана упростить реализацию сложной обработки переменных потока, ошибок, а также тел запросов и ответов.
С помощью процедурного кода вы можете:
- Создавайте или изменяйте сложные значения в теле запроса, такие как значения запроса и ответа.
- Перезаписывать URL-адреса, например, для маскировки URL-адреса целевой конечной точки.
- Добавьте другую логику, недоступную при использовании уже включенных политик.
Как это работает
Для выполнения вызовов из прокси-потока к вашему включенному коду используется политика, специфичная для данного языка. Для каждого из поддерживаемых языков Apigee Edge включает отдельную политику: политика JavaScript , политика вызовов Java и политика скриптов Python .
Ниже в общих чертах описан один из способов реализации этой системы. Для получения более подробной информации обязательно ознакомьтесь с документами, указанными в политике компании.
- В отдельном файле напишите код, который вы собираетесь использовать.
- В вашем коде поместите результат обработки кода в переменную потока Apigee Edge.
Значение переменной вы получите в другом месте вашего API-прокси. Дополнительную информацию о переменных потока см. в разделе «Управление состоянием прокси с помощью переменных потока» .
- Добавьте свой файл (или JAR-файл) в качестве файла ресурсов в ваш API-прокси.
Дополнительную информацию о файлах ресурсов см. в разделе «Файлы ресурсов» .
- Добавьте политику, соответствующую используемому вами языку.
Настройте политику таким образом, чтобы вызов вашего кода выполнялся из нужного места в потоке работы вашего API-прокси.
- Используйте политику для получения значения кода из переменной потока.
Ограничения
Модель безопасности Apigee Edge не допускает системных вызовов, таких как сетевой ввод-вывод, чтение/запись файловой системы, информация о текущем пользователе, список процессов и использование ЦП/памяти. Хотя некоторые из таких вызовов могут быть функциональными, они не поддерживаются и могут быть активно отключены в любой момент. Для обеспечения обратной совместимости следует избегать подобных вызовов в коде.
Для каждого поддерживаемого языка могут существовать и другие ограничения, описанные в соответствующем справочнике по политике для данного языка.
Поддерживаемые языки
JavaScript
Поддержка JavaScript включает в себя полную объектную модель для обработки переменных и значений, специфичных для API-прокси. Подробнее см. в разделе «Объектная модель JavaScript» .
Для получения справочной информации о политиках и примеров см. разделы «Политики JavaScript» и «Прокси API программирования с использованием JavaScript» . Примеры кода можно найти в списке примеров , содержащих JavaScript.
Java
Используйте политику Java Callout для выполнения вызовов к Java-коду из потока вашего прокси-сервера. В разделе справочника по политикам приведены примеры.
Вас также могут заинтересовать следующие темы:
- Как создать вызов Java
- Как обрабатывать ошибки вызовов Java
- Как использовать свойства в вызове Java-функции
Для поиска примеров кода найдите в списке примеров те, которые содержат Java-код.
Python
Используйте политику Python Script для вызова кода Python.
Для поиска примеров кода воспользуйтесь списком примеров , в котором есть код на Python.