WSDL是SOAP服务的输出,还是SOAP服务从WSDL启动


Is the WSDL the output of a SOAP service or does a SOAP service launches from a WSDL?

我们是否需要WSDL文件来制作SOAP web服务,并为客户端使用相同的WSDL ?或者,我们是否为web服务创建类并使用它们自动为客户机生成WSDL ?

您所指的是合同优先和合同最后的区别。

契约优先意味着您创建描述web服务操作的WSDL,然后您使用WSDL为web服务构建代码框架。

Contract-last意味着您先编写web服务代码骨架,然后让框架从该代码生成WSDL。

无论哪种方式,结果都是相同的:您有一个WSDL给您的客户端来生成代码存根,并且您有服务器端代码与该WSDL一起运行。

手工创建WSDL可以让你更好地控制它的内容,你甚至不需要在它后面有任何web服务代码(也就是说,你可以并行地构建服务和客户端)。但大多数开发人员不想构建一个,因为这只是在网络上获取信息所需的管道;他们不想把时间浪费在这上面,而是专注于构建web服务本身。

底线是你可以根据你的技能、需求、限制或偏好选择任何你喜欢的风格。