问题标签 [wsdl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
170725 浏览

php - 如何从 PHP 轻松使用 Web 服务

是否有任何 PHP 工具可用于生成代码以使用基于其WSDL的Web 服务?类似于在 Visual Studio 中单击“添加 Web 引用”或对 Java 执行相同操作的 Eclipse 插件。

0 投票
3 回答
9126 浏览

web-services - 基于文档或 RPC 的 Web 服务

我的直觉是在实践中首选基于文档的 Web 服务——这是其他人的经验吗?他们更容易支持吗?(我注意到 SharePoint 在其 WSDL 接口中使用 Any 作为“文档类型”,我猜这使它基于文档)。

另外 - 人们现在是否为相同的功能同时提供 WSDL 和 Rest 类型的服务?WSDL 在代码生成方面很受欢迎,但对于 PHP 和 Rails 等前端,它们似乎更喜欢休息。

0 投票
4 回答
1153 浏览

.net - 通过 Web 服务发送复杂数据的首选方法是什么?

现在是 2008 年,我仍然对这个感到困惑。因此,我正在开发一种需要将复杂类型传递到其中并从中返回的 Web 方法。我正在玩弄的两个选项是:

  1. 传递和返回具有数据和行为的实际业务对象。运行 wsdl.exe 时,它​​会自动创建仅包含数据部分的代理类,并且这些代理类将自动与服务器端的真实业务对象相互转换。在客户端,他们只能使用哑代理类型,并且他们必须将它们映射到他们认为合适的一些真实的业务对象中。这里的一个很大的缺点是,如果我同时“拥有”服务器端和客户端,并且我想使用同一组真实的业务对象,我可能会遇到名称冲突等问题。(因为真实对象和代理名称相同。)

  2. 忘记尝试传递“真实”的业务对象。相反,只需创建简单的 DataTransfer 对象,我将手动将其映射到我的真实业务对象。无论如何,它们仍然会被 wsdl.exe 复制到新的代理对象,但至少我没有欺骗自己认为 Web 服务可以本机处理具有业务逻辑的对象。

顺便说一句 - 有谁知道如何告诉 wsdl.exe不要复制对象?我们不应该直接告诉它,“嘿,在这里使用这个现有的类型。不要复制它!”

无论如何,我现在已经确定了#2,但我很好奇你们的想法。我感觉一般来说有更好的方法可以做到这一点,而且我的所有观点可能都不完全准确,所以请让我知道你的经历。

更新:我刚刚发现 VS 2008 在添加“服务引用”时可以选择重用现有类型,而不是在代理文件中创建全新的相同类型。甜的。

0 投票
2 回答
258 浏览

asp.net - 在自定义构建中自动化 WSDL.exe

我有一个用 C# 编写的 Web 应用程序,它使用多个内部 Web 服务。我们有一个开发层、一个测试层和一个生产层。此外,我们使用该命令为给定层的 Web 服务WSDL.exe生成文件。Proxies.cs

当我们准备好将代码从开发到测试或测试到生产部署到堆栈时,我们需要运行WSDL.exe命令以指向适当版本的 Web 服务。

有没有一种普遍接受的方法来自动化这个?

0 投票
4 回答
1426 浏览

web-services - Web 方法返回值的良好设计模式是什么?

在编写 Web 服务代码时,您如何构造返回值?您如何处理错误情况(预期的和意外的)?如果您要返回像 int 这样简单的东西,您是直接返回它,还是将它嵌入到更复杂的对象中?一个服务中的所有 Web 方法是否都返回单个类的实例,或者您是否为每个方法创建自定义返回值类?

0 投票
3 回答
21667 浏览

javascript - 从 WSDL 生成 JavaScript 存根

我正在寻找一种从 WSDL 生成 JavaScript 存根的工具。

虽然我通常更喜欢将 REST 服务与 JSON 或 XML 一起使用,但我目前正在集成一些仅使用 SOAP 的工具。

我已经在 J​​avaScript 中创建了客户端的第一个版本,但是我正在手动解析 SOAP 信封,并且我怀疑我的代码是否能够在服务升级中存活下来,例如,看看 SOAP 信封规范有多复杂。

那么是否有任何工具可以从 WSDL 为 JavaScript 自动生成完全符合 SOAP 的存根,这样我就可以对我的客户端代码的未来更有信心。

更多:我尝试使用的 Web 服务是 RPC 编码的,而不是文档文字。

0 投票
1 回答
198 浏览

web-services - 从网站到 Web 应用程序的 Web 服务消费

我正在尝试使用多个 Web 服务,这些服务在其 wsdl 中重新定义了一些相同的公共类。我目前在网站中引用了它们,但我想转换为 Web 应用程序。

由于一些相同的类是从多个 Web 服务中重新定义的,因此问题是当将它们添加到 Web 应用程序中时,无法像在网站中那样使多个 Web 服务之间的名称空间相同。

有什么办法可以做我正在寻找的东西吗?

0 投票
6 回答
9778 浏览

.net - 传递复杂类型的 WCF 问题

我有一个服务合同,它定义了一个带有 System.Object 类型参数的方法(WSDL 中的 xs:anyType)。我希望能够在此参数中传递简单类型和复杂类型。简单类型可以正常工作,但是当我尝试传递在我的 WSDL 中定义的复杂类型时,我收到此错误:

元素“ http://tempuri.org/:value ”包含“ http://schemas.datacontract.org/2004/07/MyNamespace:MyClass ”数据合同的数据。反序列化器不知道映射到该合约的任何类型。将与“MyClass”对应的类型添加到已知类型列表中 - 例如,通过使用 KnownTypeAttribute 属性或将其添加到传递给 DataContractSerializer 的已知类型列表中。

将它添加为已知类型并没有帮助,因为它已经在我的 WSDL 中。如何通过“xs:anyType”参数传递复杂类型的对象?

更多信息:

我相信这在使用 NetDataContract 时有效,但我不能使用它,因为我的客户是 Silverlight。

我已经看到对显式扩展 xs:anyType 的复杂类型的引用,但我不知道如何让 WCF 生成一个可以做到这一点的 WSDL,我也不知道它是否会有所帮助。

谢谢

0 投票
1 回答
705 浏览

visual-studio - 如何阻止 Visual Studio 生成的 Web 服务代理类进行编码?

我正在使用 Visual Studio 生成的代理类来访问 Web 服务(将 Web 服务添加为我的项目的 Web 引用)。问题是 Web 服务公开的函数需要一个 CDATA 元素,即:

不幸的是,当我将 "" 传入代理类时,它使用以下命令调用 Web 服务:

这似乎会导致 Web 服务出现问题。有什么办法可以在仍然使用 Visual Studio 生成的代理类的同时解决这个问题?

0 投票
5 回答
32106 浏览

soap - WSDL 生成工具

谁能推荐一个好的(最好是开源的)工具来为一些肥皂网络服务创建 WSDL 文件?

我尝试过使用一些可用的 eclipse 插件,但对我的发现印象不深。