【发布时间】:2020-05-28 13:08:13
【问题描述】:
我有一个 azure 函数应用程序(v1,不幸的是无法升级),其端点通过 POST 请求接收 JSON,进行一些计算并在响应中返回 JSON。该端点需要与 SOAP 兼容,这意味着它应该接收 SOAP 请求并返回 SOAP 响应,并且还能够提供 WSDL 文件。
由于其局限性,不能在 API 管理中使用 SOAP 映射器。
我尝试过的方法是:
创建 WCF 服务并尝试从 Azure 函数终结点将 HTTP 请求委托给它。这似乎不起作用,因为 WCF 中的相应处理程序只能通过其自己的 HTTP 端点接收请求(似乎不能通过 azure 函数端点公开),但不能从代码中调用。
使用以SoapCore 为起点的 ASP.net Web 应用程序,并尝试将其迁移到 azure 函数。由于结构完全不同,这似乎是不可能的。 SoapCore 作为中间件附加到 ASP.net 应用实例,而 azure 函数不提供使用中间件的方法。
手动解析 SOAP 请求,将其转换为 JSON,进行计算,将结果转换回 SOAP 消息并返回。这看起来很 hacky,而且必须手动创建和提供 WSDL。尽管有这些缺点,但由于前两个不可行,我倾向于这种解决方案。
还有其他我可能错过的解决方案吗?
【问题讨论】:
-
你的问题最后是怎么解决的?任何更新?谢谢。
标签: c# .net soap azure-functions