我无法理解WS- *

时间:2010-11-14 19:49:52

标签: wcf web-services

1)据我所知,只有WS- *规范支持的传输协议是http?如果是这样,WS- *是否也支持其他传输协议(tcp等)有特殊原因吗?

2)假设我们使用非ws。*兼容的绑定/协议(即不兼容的安全性,传输,编码等协议),如何在WSDL文件中指定此协议?意思是,对于如何在WSDL文件中命名/表示非ws- *兼容协议有一些共同的理解吗?

3)WS- *规范是否仅建议为了互操作性而应该实施哪些协议Web服务,或者它们是否也定义了其中一些协议?

谢谢

回复user384706:

  

WS- *是各种规格   与网络服务相关联。

我假设WS- *本身没有定义任何协议?

  

它们被实现为扩展   SOAP。

您能详细说明“作为SOAP的扩展”的含义吗?

  

WS-I Basic Profile是   定义所有的规范   保证的细节   Web服务之间的互操作性。一个   Web服务完全符合WS-I   BP可以声称能够   与任何客户互操作。

WS-I Basic Profile规范外,还有其他规范定义了两个Web服务完全兼容所需的所有细节吗?也就是说,wsHttpbinding支持几个WS- *规范,但有一些通用名称描述了wsHttpbinding支持的这组规范(类似WS-I Advanced Profile)吗?

  

完全符合WS-I的Web服务   BP可以声称能够   与任何客户互操作。

我认为实施wsHttpbinding的网络服务与WS-I Basic Profile不向后兼容?因此,我们无法声称此网络服务完全符合WS-I BP

回复marc_s:

  

1)我不认为这是真的 -   几个WS- *协议是   绝对可用于netTcpBinding,    - WS-Addressing,WS-Trust,   WS-SecureConversation的,   WS-ReliableMessaging的,   WS-AtomicTransactions等等。看到   关于NetTcpBinding提到的MSDN文档   那些WS- *标准。

但正如其他海报所指出的那样,WS * - 规范是作为SOAP的扩展实现的,SOAP仅支持Http,因为非HTTP的详细信息SOAP规范没有充分描述绑定。那么除了http之外,WS- *如何能够支持其他传输协议?

  

2)WSDL绝不与之相连   WS- *标准 - 它只是一个   标准化的表达方式   服务方法和消息。它的   完全独立于WS- *协议   和他们的实现 - 你可以   绝对使用WSDL(和XSD去)   以及它为您的服务,和   然后使用basicHttpBinding或其他东西   否则你的绑定。

我知道这是一个模糊甚至是愚蠢的问题,但是......如果我创建一个新协议T并希望我的网络服务能够实现它,那么我是否应该如何在其中指定它WSDL

  

WS- *规范通常定义   您服务的某些功能   和协议 - 而不是实际的服务   方法和消息   交换。

它是否也定义了任何协议?

BTW - 除WS-I Basic Profile规范外,还有其他规范定义了两个Web服务完全兼容所需的所有细节吗?也就是说,wsHttpbinding支持几个WS- *规范,但有一些通用名称描述了wsHttpbinding支持的这组规范(类似WS-I Advanced Profile)吗?

1 个答案:

答案 0 :(得分:1)

WS- *是与Web服务相关的各种规范 它们被实现为SOAP的扩展。这意味着他们正在使用SOAP消息传递结构来实现他们的规范。例如。在WS-Eventing中传递地址以通过SOAP标头发送通知 除了HTTP之外,SOAP被设计为抽象的以支持其他传输( note :HTTP是在TCP之上运行的应用程序协议),例如SMTP和FTP,但WS-I Basic Profile仅支持HTTP,因为SOAP规范没有充分描述非HTTP绑定的详细信息。
WS-I Basic Profile是定义保证Web服务之间互操作性的所有细节的规范 完全符合WS-I BP的Web服务可以声称能够与任何客户端进行互操作。 Web服务标准存在许多含糊之处,而WS-I BP则澄清了所有这些,以便实现互操作性的保证。 WS-I BP是Web服务互操作性的唯一规范。 WS- *只是执行与Web服务相关的特定功能的机制。例如。如何向Web服务发送通知