WSO2-AM 转换请求、响应
WSO2-AM Transform Request, Response
我想以某种方式操纵请求和响应的内容。
1) 只传递相关参数
API Request : ?par1=val1&par2=val2
BackEnd Request : ?par1=val1
2) 传递 API Header 参数作为 Query-string 参数
API Request : "x-uuid : 034060c8-f2e0-4f38-ad83-37c1fbd5e239"
BackEnd Request : ?uuid=034060c8-f2e0-4f38-ad83-37c1fbd5e239
3) 构建包含更多后端请求和响应的响应
BackEnd response1 : { par1:val1 }
BackEnd response2 : { par2:val2 }
API Response : { par1:val1, par2:val2 }
4) 数据转换
string <-> number, etc...
我该怎么做? WSO2 中有可视化工具吗?
您应该可以通过使用 WSO2 ESB 产品 [1] 来做到这一点。您只需将请求发送到在 ESB 中创建的代理,进行转换并在转换完成后将响应发送回您的端点。您可以使用 ESB 中介 [2] 进行这些验证。如果您需要可视化工具来创建代理服务、序列和中介者,您可以使用 WSO2 developer studio [3].
此外,您可以使用 API-Manager 在 [8] 中解释的自定义中介序列来执行相同的实现。
请在下面找到更多信息,让您有一个更高层次的想法。
1) 仅传递相关参数:-
您可以使用脚本调解器通过编写您自己的 javascript 来实现此目的,并使用正则表达式过滤来过滤出您需要的内容 [4].
2) 将API Header 参数作为Query-string 参数传递
您可以使用 Header 中介 [5].
操纵 header 值
3) 构建包含更多后端请求和响应的响应:-
不太确定这里的确切要求。但是,如果您查看迭代调解器 [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
希望这个回答能帮到您。
干杯,
普布杜.
我想以某种方式操纵请求和响应的内容。
1) 只传递相关参数
API Request : ?par1=val1&par2=val2
BackEnd Request : ?par1=val1
2) 传递 API Header 参数作为 Query-string 参数
API Request : "x-uuid : 034060c8-f2e0-4f38-ad83-37c1fbd5e239"
BackEnd Request : ?uuid=034060c8-f2e0-4f38-ad83-37c1fbd5e239
3) 构建包含更多后端请求和响应的响应
BackEnd response1 : { par1:val1 }
BackEnd response2 : { par2:val2 }
API Response : { par1:val1, par2:val2 }
4) 数据转换
string <-> number, etc...
我该怎么做? WSO2 中有可视化工具吗?
您应该可以通过使用 WSO2 ESB 产品 [1] 来做到这一点。您只需将请求发送到在 ESB 中创建的代理,进行转换并在转换完成后将响应发送回您的端点。您可以使用 ESB 中介 [2] 进行这些验证。如果您需要可视化工具来创建代理服务、序列和中介者,您可以使用 WSO2 developer studio [3].
此外,您可以使用 API-Manager 在 [8] 中解释的自定义中介序列来执行相同的实现。
请在下面找到更多信息,让您有一个更高层次的想法。
1) 仅传递相关参数:- 您可以使用脚本调解器通过编写您自己的 javascript 来实现此目的,并使用正则表达式过滤来过滤出您需要的内容 [4].
2) 将API Header 参数作为Query-string 参数传递 您可以使用 Header 中介 [5].
操纵 header 值3) 构建包含更多后端请求和响应的响应:-
不太确定这里的确切要求。但是,如果您查看迭代调解器 [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
希望这个回答能帮到您。
干杯, 普布杜.