我是webservices的新手,我无法直接修改wsdl以返回自定义类型而不是字符串
这是wsdl - > http://www.webservicex.net/globalweather.asmx?WSDL
是否可以编辑wsdl以将自定义类型作为响应返回,而无需知道如何在远程端定义Web服务?
答案 0 :(得分:1)
WSDL是服务提供的合同,描述了如何与服务进行交互。这是由WSDL完成的,该WSDL描述了如何调用服务以及要发送的数据和接收的内容。您无法更改不属于您的WSDL。一旦部署并运行了WSDL,它本质上是服务提供者和消费者之间关于事物如何工作的只读合同
更改WSDL意味着您可能需要更改服务代码。在您的示例中,WSDL似乎是一个您没有源代码控制的服务,因此您无法修改该WSDL并期望您的客户端工作。
还有另一种方法来解决这个问题。您可以创建使用原始Web服务的代理Web服务,然后将响应转换为新的WSDL结构。然后,客户端将调用您的Web服务,该服务将调用原始服务将响应转换回您的WSDL指定的响应。