Как использовать процедурный код

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

Вы можете добавить код на процедурных языках, таких как 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, чтобы вызвать код Python.

Чтобы найти образцы кода, в списке образцов выберите те, в которых используется Python.