WSO2-AM转换请求,响应

时间:2015-09-08 13:43:50

标签: wso2 wso2-am

我想以某种方式操纵请求和回复的内容。

1)仅传递相关参数

API Request : ?par1=val1&par2=val2
BackEnd Request : ?par1=val1

2)将API标头参数作为查询字符串参数传递

API Request : "x-uuid : 034060c8-f2e0-4f38-ad83-37c1fbd5e239"
BackEnd Request : ?uuid=034060c8-f2e0-4f38-ad83-37c1fbd5e239

3)构建包含更多BackEnd请求和响应的响应

BackEnd response1 : { par1:val1 }
BackEnd response2 : { par2:val2 }
API Response : { par1:val1, par2:val2 }

4)数据转换

string <-> number, etc...

我该怎么办?在WSO2中是否有可视化工具?

1 个答案:

答案 0 :(得分:0)

您应该可以使用WSO2 ESB产品[1]来完成此操作。您只需将请求发送到在ESB中创建的代理,进行转换并在转换完成后将响应发送回您的端点。您可以使用ESB调解器[2]进行这些验证。如果您需要可视化工具来创建代理服务,序列和调解器,您可以使用WSO2开发人员工作室[3]。

此外,您可以使用[8]中解释的API-Manager自定义中介序列执行相同的实现。

请在下面找到更多信息,以便为您提供高水平的想法。

1)仅传递相关参数: - 您可以使用脚本调解器来编写自己的javascript并使用正则表达式操作来过滤掉您需要的内容[4]。

2)将API标头参数作为查询字符串参数传递 您可以使用Header介体[5]来操作标头值。

3)构建包含更多BackEnd请求和响应的响应: -

这里的确切要求不太确定。但是如果你看看迭代介体[6]和聚合介体[7],它可能会帮助你了解你可能想要实现这个目标。

4)数据转换

我认为这取决于您通过转换实现的目标。如果您只是想转换一个值,那么您可以通过在脚本调解器中使用javascript来完成此操作。

[1] https://docs.wso2.com/display/ESB490/WSO2+Enterprise+Service+Bus+Documentation

[2] https://docs.wso2.com/display/ESB490/Mediators

[3] https://docs.wso2.com/display/DVS380/Creating+ESB+Artifacts

[4] https://docs.wso2.com/display/ESB490/Script+Mediator

[5] https://docs.wso2.com/display/ESB490/Header+Mediator

[6] https://docs.wso2.com/display/ESB490/Iterate+Mediator

[7] https://docs.wso2.com/display/ESB490/Aggregate+Mediator

[8] https://docs.wso2.com/display/AM1100/Change+the+Default+Mediation+Flow+of+API+Requests

希望这个答案能帮助你了解一下。

干杯, Pubudu。