SOAP to Rest 网关的最佳解决方案

Posted

技术标签:

【中文标题】SOAP to Rest 网关的最佳解决方案【英文标题】:best solution for a SOAP to Rest gateway 【发布时间】:2018-03-05 01:04:49 【问题描述】:

我有一个需要转换为 Rest 的 SOAP API。我需要帮助寻找解决方案来管理从 SOAP 到 Rest 的翻译。

我已经实现了一组新的 Restful API,将曾经操纵多个对象的单个 SOAP 请求转换为专注于单个对象的单个 Rest 调用。

例如:

在单个 Soap 调用 createUser() 中: 1.创建用户档案信息 2.创建一个帐户 3. 发送欢迎邮件

现在分为三个调用:

    createProfile() createAccount() notifyUser()

我正在寻找的基本内容:

    允许将 SOAP API 转换为 Rest API 允许将单个 SOAP 请求转换为多个 Rest API 请求 管理链式 Rest API 请求(如果一个 SOAP 调用导致多个 Rest 调用,我们需要管理第一个调用成功,但第二个调用失败) 需要映射所有错误信息 需要可扩展

有商业解决方案 (Apigee) 和开源解决方案 (Kong)。

我的问题是:

    哪些解决方案可行? 我应该首先使用哪些解决方案进行 POC?

谢谢!

【问题讨论】:

Apache-camel 非常适合这个。 我有一个类似的问题,关于带有一些 ASMX Web 服务的 ASP.NET Web 窗体应用程序。为了解决这个问题,我正在开发一个 ASP .NET Core 2 WebAPI 应用程序,它作为一种“网关”工作,公开 API 并在内部重定向到原始的 ASMX Web 服务。您是否曾经尝试/考虑过类似的事情,制作自己的网关? 【参考方案1】:

可能为时已晚,

但是我遇到了类似的问题,在考虑了所有选项之后,我继续使用 strongloop 环回框架手动构建它,它内置了 soap 到 rest 转换(xml 到 json 和 json 到 xml)并且很容易脚手架的东西与

在这里查看:https://github.com/strongloop/loopback-connector-soap

【讨论】:

以上是关于SOAP to Rest 网关的最佳解决方案的主要内容,如果未能解决你的问题,请参考以下文章

API 网关和 ESB 有啥区别?

Web 服务的安全性(REST 和 SOAP)[关闭]

GraphQL 的 SOAP 转换

技术派:谁说API网关只能集成REST APIs?

通过 XMPP 进行 SOAP/REST 调用

REST 何时/如何取代 SOAP [关闭]