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

Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
info

Za pomocą zasad dostępnych w ramach Apigee Edge możesz manipulować wiadomościami przesyłanymi przez serwery proxy interfejsu API. Dzięki zasadom możesz:

  • konwertować wiadomości między formatami, np. z XML na JSON;
  • Ustawianie wartości zmiennych na podstawie treści wiadomości i tworzenie wiadomości z wartości zmiennych.
  • Używaj kodu proceduralnego, np. JavaScriptu, Javy i Pythona, aby przetwarzać wiadomości i dane w bardziej złożony sposób.

Zwykle podczas korzystania z tych zasad podajesz dane wejściowe i wyjściowe jako zmienne przepływu. W czasie wykonywania Apigee Edge pobiera wartość wejściową ze zmiennej źródłowej i zapisuje wartość wyjściową w zmiennej wyjściowej.

W tym temacie omawiamy te funkcje. Aby uzyskać bardziej szczegółowe i techniczne informacje, zapoznaj się z odpowiednimi zasadami.

Prosta obsługa plików XML i JSON

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

Konwertowanie kodu JSON na kod XML

Zasada JSON na XML pobiera dane wejściowe JSON i konwertuje je na format XML.

W poniższym przykładzie zasady zasada pobiera wiadomość w formacie JSON ze zmiennej request, a następnie zastępuje wartość zmiennej komunikatem w formacie XML. Dane wejściowe są określone w elemencie <Source>, a dane wyjściowe – w elemencie <OutputVariable>.

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

Konwertowanie XML na JSON

Zasada XML to JSON konwertuje komunikat wejściowy XML na JSON.

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

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

Przekształcanie danych XML za pomocą XSL

Aby przekształcać wiadomości za pomocą XSL, możesz użyć transformacji XSL. Na przykład po przekonwertowaniu ładunku JSON na XML możesz użyć zasady Przekształcenie XSL z arkuszy stylów, aby wykonać potrzebną Ci transformację.

W poniższym przykładzie zasady zasada pobiera wiadomość w formacie XML ze zmiennej response, a następnie zastępuje wartość zmiennej komunikatem sformatowanym przez zasadę 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/>

Obsługa danych zmiennych

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

Zapoznaj się z odniesieniami do tych dwóch zasad:

Tworzenie bardziej złożonych przekształceń

Do obsługi danych, której złożoność wykracza poza możliwości uwzględnionych zasad, możesz użyć języków procedur, 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 na podstawie zasad dotyczących konkretnego języka. Więcej informacji znajdziesz w artykule na temat wdrażania kodu procedurlnego.