Dołączanie zasady do punktu końcowego ProxyEnd lub docelowego punktu końcowego

Przeglądasz dokumentację Apigee Edge.
Przejdź do Dokumentacja Apigee X.
informacje.

Zasady nie są wykonywane, dopóki nie zostaną dołączone do przepływu. Możesz utworzyć zasadę przez nadanie nazwy zasadzie w konfiguracji kroku.

Wybór punktu przyłącza ma kluczowe znaczenie dla działania serwera proxy interfejsu API. Na przykład, jeśli dołączysz do przepływu odpowiedzi zasadę dotyczącą limitów, limit zostanie wyegzekwowany po wiadomość z żądaniem została wysłana do usługi backendu. Wykluczenie celu stosowania Zasady dotyczące limitów. W związku z tym musisz dołączyć do żądania zasadę dotyczącą limitów jako etap przetwarzania Flow.

Format załącznika zasad jest następujący:

<Step>
    <Name>{policy_name}</Name>
</Step>

Na przykład:

<Step>
    <Name>QuotaPolicy</Name>
</Step>

Zasada jest dołączana do przepływu przez dodanie konfiguracji kroku do odpowiedniego żądania lub procesu odpowiedzi w konfiguracji ProxyEndpoint lub TargetEndpoint.

Możesz dołączyć zasadę do przepływu żądania lub odpowiedzi. Przepływy żądań i odpowiedzi są bardziej szczegółowe z podziałem na PreFlow i PostFlow.

Poniższy przykład przedstawia minimalną konfigurację ProxyEndpoint bez zasady załączniki. Po prostu definiuje (przychodzące) połączenie HTTPProxyConnection i RouteRule.

<ProxyEndpoint name="default">
    <HTTPProxyConnection>
        <BasePath>/weather</BasePath>
        <VirtualHost>default</VirtualHost>
    </HTTPProxyConnection>
    <RouteRule name="default">
        <TargetEndpoint>default</TargetEndpoint>
    </RouteRule>
</ProxyEndpoint>

Musisz zmodyfikować tę konfigurację, tak aby punkt końcowy serwera proxy wymuszał stosowanie zasady limitów (jako przetwarzania) przed wykonaniem innych działań przez serwer proxy interfejsu API. Jeśli deweloper przekroczył limit limit, nie chcesz marnować zasobów obliczeniowych na dodatkowe żądania.

Aby wymusić tę konfigurację, do żądania PreFlow dołączasz etap przetwarzania jako następujące:

<ProxyEndpoint name="default">
  <PreFlow>
    <Request>
      <Step><Name>QuotaPolicy</Name></Step>
    </Request>
  </PreFlow>
  <HTTPProxyConnection> 
    <BasePath>/weather</BasePath> 
    <VirtualHost>default</VirtualHost> 
  </HTTPProxyConnection> 
  <RouteRule name="default"> 
    <TargetEndpoint>default</TargetEndpoint> 
  </RouteRule> 
</ProxyEndpoint>

Czasami może być konieczne, aby zasada została zastosowana po innym początkowym przetwarzaniu ProxyEndpoint. Na przykład chcesz sprawdzić limit w PreFlow, a następnie wykonać kolejny zestaw po sprawdzeniu limitu, na przykład skonwertowanie żądania z formatu JSON do XML. Aby to zrobić: Dołącz zasadę do ścieżki żądania PostFlow. Oto przykładowe żądanie PostFlow załącznik. Ta zasada jest wykonywana w odpowiedzi na żądanie, gdy wszystkie zasady w tabeli Wykonuje się działania PreFlow (i wszystkie przepływy warunkowe).

<PostFlow>
  <Request>
    <Step><Name>JSONtoXMLPolicy</Name></Step>
  </Request>
</PostFlow>

Poniżej znajdziesz przykładowy załącznik odpowiedzi PostFlow. Ta zasada zostanie zastosowana z odpowiedzią. (Odpowiedź ProxyEndpoint PostFlow to ostatni etap przetwarzania przed odpowiedź jest zwracana do aplikacji klienckiej wysyłającej żądanie).

<PostFlow>
  <Response>
    <Step><Name>XMLtoJSONPolicy</Name></Step>
  </Response>
</PostFlow>