Tworzenie i przekształcanie wiadomości oraz uzyskiwanie do nich dostępu

Wyświetlasz dokumentację Apigee Edge.
Przejdź do dokumentacji Apigee X.
info

Do manipulowania wiadomościami przepływającymi przez serwery proxy interfejsu API możesz używać zasad dołączonych do Apigee Edge. Dzięki zasadom możesz:

  • konwertować wiadomości między formatami, np. z XML na JSON;
  • ustawiać wartości zmiennych na podstawie treści wiadomości i tworzyć wiadomości na podstawie wartości zmiennych;
  • używać kodu proceduralnego, np. JavaScript, Java i Python, do bardziej złożonego przetwarzania wiadomości i danych.

Ogólnie rzecz biorąc, podczas korzystania z tych zasad określasz dane wejściowe i wyjściowe jako zmienne przepływu. W czasie działania Apigee Edge pobiera wartość wejściową ze zmiennej źródłowej i zapisuje wartość wyjściową w zmiennej wyjściowej.

W tym artykule opisujemy te możliwości. Więcej informacji technicznych znajdziesz w dokumentacji zasad.

Proste przetwarzanie XML i JSON

Apigee Edge zawiera zasady, które ułatwiają konwersję między formatami XML i JSON oraz przekształcanie XML za pomocą XSL.

Konwertowanie JSON na XML

Zasada JSON to XML pobiera dane wejściowe w formacie JSON i konwertuje je na XML.

W tym przykładzie zasady pobierają wiadomość w formacie JSON ze zmiennej request, a następnie zastępują wartość zmiennej wiadomością w formacie XML. Dane wejściowe są określone w elemencie <Source>, a dane wyjściowe są określone w elemencie <OutputVariable>.

<JSONToXML name="jsontoxml">
     <Source>request</Source>
     <OutputVariable>request</OutputVariable>
</JSONToXML>

Konwertowanie XML na JSON

Zasada XML to JSON konwertuje wejściową wiadomość XML na JSON.

W tym przykładzie zasady pobierają wiadomość w formacie XML ze zmiennej response, a następnie zastępują wartość zmiennej wiadomością w formacie JSON. Dane wejściowe są określone w elemencie <Source>, a dane wyjściowe są określone w elemencie <OutputVariable>.

<XMLToJSON name="ConvertToJSON">
   <OutputVariable>response</OutputVariable>
   <Source>response</Source>
</XMLToJSON>

Przekształcanie XML za pomocą XSL

Do przekształcania wiadomości za pomocą XSL możesz użyć zasady XSL Transform. Na przykład po przekonwertowaniu ładunku JSON na XML możesz użyć zasady XSL Transform z arkuszem stylów, aby przeprowadzić potrzebną transformację.

W tym przykładzie zasady pobierają wiadomość w formacie XML ze zmiennej response, a następnie zastępują wartość zmiennej wiadomością sformatowaną przez my_transform.xsl. Dane wejściowe są określone w elemencie <Source>, a dane wyjściowe w elemencie <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/>

Przetwarzanie danych zmiennych

Przetwarzanie danych w serwerze proxy często polega na pracy z danymi stanu jako wartościami zmiennych przepływu. Często możesz to zrobić, używając zasady, która pobiera lub ustawia wartości zmiennych. Możesz na przykład, przekształcić wartości zmiennych w wiadomość lub wyodrębnić zawartość wiadomości, aby ustawić wartości zmiennych.

Zapoznaj się z dokumentacją tych 2 zasad:

Tworzenie bardziej złożonych transformacji

Do przetwarzania danych, których złożoność wykracza poza możliwości wbudowanych zasad, możesz używać języków proceduralnych, takich jak JavaScript, Java czy Python.

Zwykle polega to na napisaniu kodu w jednym z tych języków, a następnie wywołaniu go z a zasady specyficznej dla tego języka. Więcej informacji znajdziesz w artykule Włączanie kodu proceduralnego.