我正在尝试使用此网站提供的网络服务:http://www.averittexpress.com/services/technology/webservices.html
我正在尝试使用的网络服务是页面上的第一个:http://webservices.averittexpress.com/TransitTimeService
我之前从未使用过Web服务,所以我不知道从哪里开始。我已经完成了搜索,但所有文章和博客帖子都已有近10年的历史了。
我尝试在Visual Studio中为我的项目添加一个Web引用并输入服务URL,但我发现了一个错误。
有人能引导我朝着正确的方向前进吗?
修改
错误讯息:
HTML文档不包含Web服务发现信息。 下载“http://webservices.averittexpress.com/TransitTimeService/$metadata”时出错。 请求失败,HTTP状态为404:Not Found。
编辑2:
我在添加网络参考时使用http://webservices.averittexpress.com/TransitTimeService?WSDL。在预览窗口中加载了XML,但我仍然收到这些错误:
*文件已被理解,但无法处理。 - WSDL文档包含无法解析的链接。 - 下载“http://webservices.averittexpress.com/TransitTimeService/TransitTimeService_schema1.xsd”时出错。 - 请求失败,HTTP状态为404:Not Found。*
这些行在预览窗口中以红色突出显示:
<definitions name="TransitTimeService"
targetNamespace="http://webservices.averittexpress.com/TransitTimeService"
xmlns="http://schemas.xmlsoap.org/wsdl/" <!-- highlighted red -->
xmlns:xsd="http://www.w3.org/2001/XMLSchema" <!-- highlighted red -->
xmlns:tns="http://webservices.averittexpress.com/TransitTimeService" <!-- highlighted red -->
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> <!-- highlighted red -->
答案 0 :(得分:1)
您提供的网址包含所有信息
http://www.averittexpress.com/services/technology/webservices.html
包括WSDL的正确的位置
http://www.averittexpress.com/services/technology/wsdl/TransitTimeService.wsdl
模式文件的位置也是它的
http://www.averittexpress.com/services/technology/wsdl/TransitTimeService_schema1.xsd
答案 1 :(得分:0)
使用以下网址:http://webservices.averittexpress.com/TransitTimeService?WSDL
您可以将WSDL导入为Web引用,也可以通过执行以下操作手动创建代理:
cd
到您的代码目录svcutil http://webservices.averittexpress.com/TransitTimeService?WSDL
,应该生成一个名为TransitTimeService.cs的客户端代理或类似的东西。答案 2 :(得分:0)
当您想要创建Web或服务引用时,您将需要Web服务的WSDL。对于大多数标准Web服务,您可以通过将?wsdl
附加到基本URL的末尾来获取服务的WSDL,如下所示:
http://webservices.averittexpress.com/TransitTimeService?wsdl
在这种情况下,上面的网址会重定向到:
http://webservices.averittexpress.com/TransitTimeService/TransitTimeService.wsdl
您应该能够使用其中任何一个来生成Web或服务引用。但是,在此特定情况下,TransitTimeService.wsdl中引用的文件似乎在该服务器上不存在:TransitTimeService_schema1.xsd。当我尝试为该WSDL创建服务引用时,我得到了404表示模式文件不存在。下面的URL是架构所在的位置,但它不存在,因此您可能无法轻松生成此服务的引用。
http://webservices.averittexpress.com/TransitTimeService/TransitTimeService_schema1.xsd