Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
С помощью политик, входящих в состав Apigee Edge, вы можете управлять сообщениями, проходящими через ваши API-прокси. С помощью политик вы можете:
- Преобразовывать сообщения между форматами, например, из XML в JSON.
- Задавайте значения переменных из содержимого сообщений и создавайте сообщения на основе значений переменных.
- Для более сложной обработки сообщений и данных используйте процедурный код, например, JavaScript, Java и Python.
Как правило, при использовании этих политик входные и выходные данные указываются в виде переменных потока. Во время выполнения Apigee Edge извлекает входное значение из исходной переменной и записывает выходное значение в выходную переменную.
В этом разделе представлены эти возможности. Для получения более полной и технической информации см. соответствующие справочные материалы по каждой из них.
Простая обработка XML и JSON.
Apigee Edge включает в себя политики, упрощающие преобразование между XML и JSON, а также преобразование XML с помощью XSL.
Преобразование JSON в XML
Политика преобразования JSON в XML принимает ваши входные данные в формате JSON и преобразует их в XML.
В приведенном ниже примере политики используется сообщение в формате JSON, полученное из переменной request , после чего значение переменной заменяется сообщением в формате XML. Входные данные указываются в элементе <Source> , а выходные данные — в элементе <OutputVariable> .
<JSONToXML name="jsontoxml">
<Source>request</Source>
<OutputVariable>request</OutputVariable>
</JSONToXML>Преобразование XML в JSON
Политика преобразования XML в JSON преобразует входное XML-сообщение в JSON.
В приведенном ниже примере политики используется XML-сообщение из переменной response , после чего значение переменной заменяется JSON-сообщением. Входные данные указываются в элементе <Source> , а выходные данные — в элементе <OutputVariable> .
<XMLToJSON name="ConvertToJSON"> <OutputVariable>response</OutputVariable> <Source>response</Source> </XMLToJSON>
Преобразование XML с помощью XSL
Политику преобразования XSL можно использовать для преобразования сообщений с помощью XSL. Например, после преобразования полезной нагрузки JSON в XML, вы можете использовать политику преобразования XSL с таблицей стилей для выполнения необходимого преобразования.
В приведенном ниже примере политики используется XML-форматированное сообщение из переменной response , после чего значение переменной заменяется сообщением, отформатированным с помощью my_transform.xsl . Входные данные указываются в элементе <Source> , а выходные данные — в элементе <OutputVariable> .
<XSL name="TransformXML">
<ResourceURL>xsl://my_transform.xsl</ResourceURL>
<Source>response</Source>
<OutputVariable>response</OutputVariable>
</XSL>
<Source>request</Source>
<ResourceURL>xsl://XSL-Transform-1.xsl</ResourceURL>
<OutputVariable/>Обработка переменных данных
Обработка данных внутри прокси-сервера часто сводится к простой работе с данными состояния в качестве значений переменных потока. Зачастую это можно сделать с помощью политики, которая получает или устанавливает значения переменных. Например, может потребоваться преобразовать значения переменных в сообщение или извлечь содержимое сообщения для установки значений переменных.
Обязательно ознакомьтесь с источниками информации по следующим двум политикам:
- Назначьте политику сообщений для создания сообщений на основе значений переменных.
- Политика извлечения переменных позволяет присваивать значения переменным из содержимого сообщения.
Создание более сложных преобразований
Для обработки данных, сложность которых выходит за рамки возможностей включенных политик, можно использовать процедурные языки, такие как JavaScript, Java или Python.
Как правило, это включает в себя написание кода на одном из этих языков, а затем вызов этого кода из политики, специфичной для данного языка. Подробнее об этом см. в разделе «Включение процедурного кода» .