2

我正在尝试将第三方托管的 Web 引用添加到 Visual Studio 2012 中的新项目中。特别是 UPS API。我已经联系了他们的支持,如果我在回答这个问题之前收到回复,它将被更新。

现在添加一个普通的 Web 引用,我已经关注了MSDN 上的文章:如何添加对 Web 服务的引用,并在如何添加 Web 引用 Visual Studio 2012中的SO 上提出问题。但是,对于 UPS API,在使用此方法时,会收到以下错误:

There was an error downloading 'https://wwwcie.ups.com/webservices/Void/_vti_bin/ListData.svc/$metadata'.

The request failed with HTTP status 404: Not Found.

现在在 UPS 开发社区论坛上,这里有一个与此类似的问题。但是,他们的解决方案是使用 UPS 提供的示例项目以及其中已有的 Web 参考并对其进行编辑。如果我要在现有应用程序中使用 Web 引用,则此解决方案无效。

附加信息,UPS 确实在开发包中提供了 WSDL 文件。我犹豫是否要采用添加它们的方法,因为在开发和生产之间,Web 服务的 URL 会发生变化。如果这可能是一个解决方案,您是否介意解释 WSDL 从开发到生产的生命周期以及如何配置 URL。

UPS 技术支持响应:

感谢您的查询。对于您在尝试将 UPS 开发工具包 API 集成到您的解决方案时遇到的困难,我深表歉意。

由于许多可能的编程语言和环境,我们不直接支持客户端代码。

为方便起见,UPS 在每个开发人员工具包中都提供了示例代码。这些文件包括 C#、Java、XML、PHP 和 Perl 的代码示例,可用作如何集成 UPS 开发人员 API 的示例。除开发人员工具包中提供的示例外,没有其他示例可用。请记住,您需要自定义这些文件以满足您的特定需求。

4

2 回答 2

3

我的解决方案是获取提供的 WSDL 文件,并在我的系统上使用它们的路径作为 Web 参考 URL。在 Project.Properties.Settings 中为 Web 服务的实际 url 自动添加了一个设置。

于 2013-08-26T23:02:32.740 回答
2

虽然这是一个老问题,但我认为这对再次遇到同样问题的人会有所帮助。我最近几个小时都经历过同样的情况。我尝试使用端点https://onlinetools.ups.com/webservices/Rate添加服务参考。

尽管在我的浏览器中浏览此 url 时,会显示 ups 提供的开发人员指南中提到的信息,我可以在使用我的帐户凭据登录他们的网站后访问这些信息,但在添加参考时会显示错误 - 无论是服务参考还是这篇文章中的问题中提到的网络参考。似乎他们故意不提供服务资源管理器所需的所有基本文件。

在此处输入图像描述

然后我在本地主机中托管了 Rate.wsdl 文件并尝试添加 Web 服务引用。我忘记将所有文件(.xsd、.cs 等)包含在与 Rate.wsdl 相同的文件夹中。所以它显示错误。在文件夹中包含所有这些文件后,我可以成功添加 Web 服务引用。

在此处输入图像描述

有了它,资源管理器找到了服务。

在此处输入图像描述

希望这可以帮助。

于 2019-01-07T09:53:40.980 回答