![](/img/trans.png)
[英]WSO2 Governance Registry not publishing Service into WSO2 API Manager
[英]WSO2 API Manager - Replace URLs in response body
我正在嘗試使用WSO2 API管理器為我的RESTful API設置代理。 我的問題是后端API的響應保持不變,因此連接到其他端點的所有URL仍引用后端服務器而不是代理。 我需要一種方法來替換響應正文中的那些url值以指向代理的api。 我知道可以通過使用ESB Mediators的 中介擴展來實現。
我對他們還不夠熟悉,因此無法找到最適合這份工作的人。 URLRewrite中介程序看起來非常簡單,但它似乎不適用於郵件正文,而不適用於郵件頭。 有效負載工廠似乎要求消息具有固定的結構,這對我來說不是很方便,因為我需要它來處理API提供的不同響應(並且我不希望在中介程序定義中維護這些結構) 。
我已經設法通過設置應用程序檢查的標頭來構建其網址來解決它: X-Forwarded-Host
和X-Forwarded-Proto
。
因此,我創建了一個Header Mediator,如下所示:
<sequence xmlns="http://ws.apache.org/ns/synapse" name="WSO2AM--Ext--In">
<header name="X-Forwarded-Host" expression="get-property('transport','Host')" scope="transport"/>
<header name="X-Forwarded-Proto" value="https" scope="transport"/>
</sequence>
那就成功了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.