將政策附加至 ProxyEndpoint 或目標端點流程

查看 Apigee Edge 說明文件。
前往 Apigee X說明文件
資訊

政策要連結至 Flow 後才會執行。您可以建立政策 即可在「步驟」設定中為政策命名,藉此終止附件。

選擇附件點是對 API Proxy 行為而言非常重要的。舉例來說 如果您將配額政策附加至回應流程,那麼系統會在之後 已將要求訊息傳送至後端服務這會導致無法套用 配額政策!因此,您需要在要求中附加配額政策做為處理步驟 流程。

政策附件的格式:

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

例如:

<Step>
    <Name>QuotaPolicy</Name>
</Step>
敬上

將步驟設定新增至適當的要求中,政策就會附加至流程 ProxyEndpoint 或 TargetEndpoint 設定中的回應流程元素。

您可以將政策附加至要求或回應流程。進一步滿足要求和回應流程 隸屬於 PreFlow 和 PostFlow

下列範例說明在沒有政策的情況下,採用最精簡的 ProxyEndpoint 設定 附件。它只會定義 (傳入) HTTPProxyConnection 與 RouteRule。

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

您必須修改這項設定,讓 ProxyEndpoint 強制執行配額政策 (做為 「處理步驟」) 之後,再進行其他處理。如果開發人員 配額,您就不會想因為額外的要求而浪費任何運算資源。

如要強制執行這項設定,請將處理步驟附加至要求 PreFlow,如下所示: 如下:

<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>

有時候,您可能想等到 ProxyEndpoint。例如,您想要檢查 PreFlow 中的「配額」,然後執行另一組 ,例如將要求從 JSON 轉換為 XML。方法如下 並將政策附加至 PostFlow 要求路徑以下是要求 PostFlow 的範例 附件。這項政策會對 執行 PreFlow (以及任何條件式流程)。

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

以下是回應 PostFlow 附件的範例。這項政策會在 回應訊息。(ProxyEndpoint 回應 PostFlow 是 回應就會傳回給提出要求的用戶端應用程式)。

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