我是网络世界的新手,因此对幕后的工作方式有点困惑。这对于我决定为我的服务选择哪个绑定很重要。我的印象是,网络上的通信主要是通过TCP/IP协议进行的。我看过TCP/IP协议,根据我的理解,HTTP是一个应用层协议。在后台,应用层与传输层通信,传输层使用TCP或UDP协议在网络上传递信息。如果是这样的话,HTTP协议的用途是什么?我确信在拼图中遗漏了一些东西,但是我找不到它是什么?
发布于 2012-09-01 01:02:37
WCF支持4种传输协议- HTTP、TCP、MSMQ和命名管道。
建议阅读this MSDN杂志的文章和这篇MSDN帖子以进一步了解。
发布于 2013-02-22 23:27:45
对于初学者来说,W3C早在1991年就回复了Why a new protocol?。虽然他们基本上说它不是邮件,文件传输,新闻,或搜索。
不过,我感觉你的问题是为什么要使用wsHttpBinding,因为不管怎样,它都是TCP。微软的netTCPBinding是微软专有的协议。它的目的是在C#在管道的两端时使用,此外,它主要针对两端的开发将由单个实体管理时,可以是单个开发人员、团队或企业集团。因为获得正确的数据类型可能很棘手。在NetTcpBinding Class上的备注中,我们发现:
WCF此绑定是Windows Communication Foundation (
)系统提供的用于通过Intranet进行通信的适当选择。
NetTcpBinding的默认配置比WSHttpBinding提供的配置更快,但它仅用于WCF到WCF通信。
相比之下,wsHttpBinding在设计时就考虑到了互操作性。它至少在一定程度上符合现有的web服务标准。从WSHttpBinding Class上的备注
WSHttpBinding类似于BasicHttpBinding,但提供了更多的
服务功能。它使用HTTP传输并提供消息安全性,与BasicHttpBinding一样,但它还提供事务、可靠消息传递和WS-Addressing,这些功能可以默认启用,也可以通过单个控制设置使用。
列出的大多数附加功能都是现代SOAP堆栈的一部分。
最后,对于那些想要发明他们的协议的人来说,本文回答的是Why [you should use] HTTP?。
https://stackoverflow.com/questions/12219203
复制相似问题