【问题标题】:Best practices for exposing types over the web在网络上公开类型的最佳实践
【发布时间】:2012-03-21 20:02:00
【问题描述】:

什么被认为是通过网络向另一个应用程序公开类型的最佳方式?

我知道这可以通过创建在 Web 服务 (WCF) 中定义的类型来实现。虽然,消费应用程序实际上不会进行任何方法/服务调用。这样做仍然是可取的吗?有更好的选择吗?

编辑 1: 有一个网站需要调用我们的 PC 应用程序。我们正在使用自定义注册协议,这将允许他们将查询字符串参数传递给我们。其中许多参数当前被定义为 Enum 类型。我的目标是公开这些类型,以便调用网站能够序列化数据并通过查询字符串安全地传递它。

编辑 2:JSON 是实现这一目标的好方法吗?我并没有真正深入研究它,但阅读概述似乎是一个很好的选择,而不是我一直在谈论的内容;)

【问题讨论】:

  • 您为什么要这样做?发送 dll 不是更容易吗?
  • 有很多方法...SOAP、XML、json...为什么不更具体地说明您要做什么。
  • Web 服务可以很好地公开 (1) 功能或 (2) 数据。你所要求的似乎是两者的混合。即通过该数据的功能来公开数据(封装在一个类型中)。你能提供这样做的动机吗?大多数时候,你需要一个而不是另一个,但不是两者都需要。

标签: c# json wcf http types


【解决方案1】:

如果您询问是否为 Web 服务公开复杂类型

我的网络服务有简单的标准类型链接整数或布尔值或包含复杂数据的 xml 的字符串。

xml 可以通过 xsd-files 描述来验证内容。还有许多平台的工具可以从 xsd 为 objectmodel 生成源代码。 (即 Dotnet 的 xsd.exe)那里

> Best practices for exposing types over the web

我会使用 xsd。

如果你想要你的 api 使用 xml 的结构化类型,你必须自己处理文章Contract-First Web Services我会有所帮助

【讨论】:

    猜你喜欢
    • 2019-02-18
    • 2010-10-08
    • 2012-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多