首页 文章

WSO2 API Manager - 它可以将REST请求转换为后端的SOAP请求吗?

提问于
浏览
5

我正在探索将WSO2 API Manager用于我们的遗留API,该API目前基于SOAP . 在IDeally,我想向我们的客户公开RESTful接口,并让API Manager将其转换为传递给我们遗留系统的SOAP请求 . 搜索WSO2站点,我发现使用XSLT转换有一些方法可以做到这一点,但仅限于使用WSo2 ESB产品时 .

有没有办法在API Manager中处理这种转换?怎么样?如果没有,我可以以某种方式利用ESB产品并将其与API Manager产品结合使用吗?或者那有点矫枉过正?

谢谢!

1 回答

  • 3

    REST到SOAP的转换是WSO2 ESB的一个突出特点 . 要了解更多信息,请查看[1]中给出的示例 . 此示例中使用的Payload Factory Mediator是一种比XSLT Mediator更新的中介类型,并且在处理SOAP消息方面比XSLT Mediator更高效 .

    WSO2 API Manager是一个用于发布,管理和管理API的平台 . WSO2 API Manager使用组件化Carbon框架构建,几乎所有WSO2 ESB组件都使用该框架 . 因此,技术上可以通过WSO2 ESB完成所有可以通过WSO2 API管理器完成的任务;但是没有WSO2 ESB中的GUI的帮助;您将不得不使用基于xml的配置的源视图 . 但是,如果要绕过这个障碍,您可以随时下载WSO2 ESB产品(也是免费和开源的),并使用GUI创建所有必要的中介序列,并将配置从WSO2 ESB复制粘贴到WSO2 API Manager已经完成了 .

    在我看来,你需要的是WSO2 ESB . 在您的情况下,我假设您只需要一个或几个SOAP API作为REST API公开;您正在更多地关注REST-SOAP转换功能,而不是管理数百个API的能力 . 如果您不需要API Manager的核心功能,例如发布API,版本控制,验证消费者,基于策略的限制以及监控API使用(有关功能的完整列表,请参阅[2]中的产品主页),然后你真的不想要API Manager . 但是,如果您有API管理要求,则可以使用WSO2 API Manager . 我认为您不应该仅仅因为您预见到某种API管理要求而应该使用WSO2 API Manager .

    使用WSO2 API Manager前端的WSO2 ESB也是一种解决方案 . 如果您在中介层中执行大量调解,WSO2甚至会推荐此架构 . 您甚至可以单独从WSO2 ESB开始,稍后在适当的要求出现时,决定使用WSO2 API Manager . 使用WSO2 API Manager面向WSO2 ESB非常简单 .

    [1] http://docs.wso2.org/wiki/display/ESB403/Sample+800+Introduction+to+REST+API

    [2] http://wso2.com/products/api-manager/

相关问题