【问题标题】:Calling a webservice (asmx) from different language从不同的语言调用 web 服务 (asmx)
【发布时间】:2012-04-11 14:26:12
【问题描述】:

我从一个非技术中介那里收到了一个关于将要使用我们的网络服务的外部组织的一些文件(.xsd 和 .wsdl)的问题。

这是我第一次为将使用 .NET 以外的其他技术(它将是 java)的外部方编写 Web 服务。

如帖子中所述:How to generate XSD files for web service 我认为只发送 wsdl 文件就足够了。

谁能告诉我我是否正确。如果不是这样。如何使用这个 wsdl 生成合适的 xsd?

【问题讨论】:

  • 首先,您是否知道 ASMX 是一项遗留技术,不应该用于新开发?
  • 是的,我已经在学习 WCF,我仍在使用 asmx 的原因是因为它已经存在并且仅在内部更新(但有一些额外的参数暴露在外部并且还有合同会改变)

标签: java .net xsd wsdl asmx


【解决方案1】:

据我所知,公开 WSDL 就足够了。
每种能够读取 wsdl 的语言都可以创建代理、包装器和/或类,以便更轻松地访问/使用您的 Web 服务。
如Wikipedia page 中所述

WSDL 将服务描述为网络端点的集合,或者 港口。 WSDL 规范为文档提供了 XML 格式 这个目的。端口和消息的抽象定义是 从它们的具体用途或实例中分离出来,允许重用 这些定义。端口是通过关联网络地址来定义的 具有可重用的绑定,并且端口的集合定义了一个服务。 消息是正在交换的数据的抽象描述,并且 端口类型是受支持操作的抽象集合。这 特定端口的具体协议和数据格式规范 type 构成一个可重用的绑定,其中操作和消息 然后绑定到具体的网络协议和消息格式。在 这样,WSDL 描述了 Web 服务的公共接口。

WSDL 通常与 SOAP 和 XML Schema 结合使用以提供 通过 Internet 提供的 Web 服务。连接到 Web 的客户端程序 服务可以读取 WSDL 文件以确定哪些操作是 服务器上可用。使用的任何特殊数据类型都嵌入在 XML Schema 形式的 WSDL 文件。然后客户端可以使用 SOAP 使用实际调用 WSDL 文件中列出的操作之一 XML 或 HTTP。

【讨论】:

    【解决方案2】:

    只需向他们公开一个测试网址。无论如何,您都应该这样做,以便他们能够在开发客户时真正测试事物。完成后,只需让他们检索 http://[insert url]?wsdl

    【讨论】:

    • 只有在合同确定并且不再更改时才应该这样做。
    猜你喜欢
    • 2013-03-27
    • 1970-01-01
    • 2014-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-31
    • 1970-01-01
    • 2012-10-31
    相关资源
    最近更新 更多