我刚刚从w3schools.com学习了WSDL.我开始知道“WSDL”是.我知道WSDL,但我没有做任何事情.我想用它去实用.我不知道该怎么做.
从哪里开始?我知道还有其他事情需要学习,我不知道他们是什么.
获得“实用”需要一些帮助.它只是在我的脑海里,我不知道如何实现它.
解决方法
Web服务涉及大量知识,WSDL只是其中的一部分.
正如您可能从w3schools学到的,WSDL意味着Web服务描述语言.这是一种记录Web服务与世界接口的方法.
可以从端点地址访问Web服务,例如
http://some.server.com/context/bla/whatever
这告诉您在哪里可以找到Web服务,它不会告诉您如何调用它(即如何构建消息以进行正确的通信).
WSDL为您提供以下信息:公开的操作,消息的组成方式,使用的绑定等.
因此,您将了解WSDL如何“适应”整个画面,我将使用一个小故事.
假设有些公司希望提供一些在线服务.他们将这些服务公开为SOAP Web服务,并在地址http://some.server.com/context/bla/whatever上提供.
在他们宣传他们的服务后,他们必须实际告诉他们的客户如何使用该东西.他们可以向他们发送电子邮件并告诉他们如何调用它,或者他们可以编写Word文档并告诉他们如何操作.但这不实用,邮件或word文档不能用于自动生成客户端代码.有些家伙必须手工编写代码……可怜的混蛋.
这就是WSDL发挥作用的地方.它是描述服务接口的规范. Beeing是一个XML文件,它是一种人类可读的格式,但更重要的是机器可以读取和处理的格式……正如您现在可能已经猜到的那样…可以基于它生成客户端代码.
因此,该公司不打算写电子邮件或文件.它们记录了WSDL文件中的所有内容并使其在线可用(WSDL中的XML Schema类型……非常重要……你应该阅读XML Schema).
为了简化事情,你可以(通常)在与Web服务相同的地址找到WSDL,只需添加一个额外的参数:
http://some.server.com/context/bla/whatever?wsdl
基于WSDL,客户端现在可以生成可以调用服务的代码(在C#中使用svcutil.exe,在Java中使用Axis wsdl2code等).
和价格迷人和灰姑娘一直幸福地过着……哦……等等……这是另一个故事:P.
现在认真……正如我在开头所说:与老师交谈并询问你应该如何通过WSDL实践.
希望这个解释能让你更清楚一些.