WCF 与 netTcpBinding + cPython

WCF with netTcpBinding + cPython

我读过这个问题WCF and Python。 但万一 wcf 服务使用 netTcpBinding,我们可以从 cPython 调用它吗?如果可以,请帮忙举个简单的例子?

could we call it from cPython

不,netTcpBinding 只能与 WCF 客户端互操作。

来自here

The default configuration for the NetTcpBinding is faster than the configuration provided by the WSHttpBinding, but it is intended only for WCF-to-WCF communication.

来自评论:

does wsHttpBinding work or only basicHttpBinding work?

简短的回答是否定的,basicHttpBinding 是唯一支持与非 wcf 客户端互操作的绑定(Web 绑定除外)。即使这样,您也可能难以从非 windows.

消费它

长答案是,出现这种情况的原因是因为 basicHttpBinding 支持通过 SOAP 1.1 进行通信,这是一个相对简单的协议,大多数供应商都以非常相似的方式实现了它。因此,这些不同的实现往往是可互操作的。然而,wsHttpBinding 是 Microsoft 试图支持 SOAP 1.2 协议和 WS-* web 服务扩展,这是一个更大、更复杂的标准集。因此,不同供应商之间的解释范围要大得多,通常会导致实现之间无法互操作。因此,理论上可以从非 wcf(或什至非 windows)客户端调用通过 wsHttpBinding 公开的端点,但您必须克服所有问题。

更好的方法是尽可能完全摆脱 SOAP,而只使用 HTTP/POX 或 HTTP/REST 服务。