我们有一个由多个客户端调用的旧版 SOAP Web 服务。
我们希望在 Azure PAAS 中托管该服务的副本。除了更改他们调用的 URL 之外,客户端不需要进行任何更改。
目前无法选择 API 管理。我考虑创建一个自定义逻辑应用连接器并尽可能使用 WSDL,但随后收到一条错误消息,指出不支持单向操作。
有哪些替代方案?是否有使用 HTTP 触发的 Azure 函数实现此目的的示例?
最佳答案
假设您要为服务契约(Contract)创建新的实现,正确的方法是使用 Azure 应用服务中托管的 .NET Framework WCF 服务。
Azure Functions 是 .NET Core,而 .NET Core 没有官方的 WCF 服务实现,并且 Azure Functions 不会以任何方式帮助您创建 SOAP 终结点。因此,它实际上比在 Visual Studio 中使用具有一流 WCF 工具的 Asp.Net 项目要困难得多。
svcutil.exe可以从 wsdl 生成实现服务的代码。
关于用于接收 SOAP 请求的 Azure 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70369904/