【问题标题】:.NET web services for mobile application用于移动应用程序的 .NET Web 服务
【发布时间】:2013-04-13 11:41:29
【问题描述】:

我必须为 iOS 和 Android 应用程序准备网络服务。我的平台将是带有 C# 的 .NET。现在我不确定以下哪个是最好的选择。

  1. WCF SOAP XML 服务
  2. WCF SOAP JSON 服务
  3. WCF REST XML 服务
  4. WCF REST JSON 服务
  5. ASMX SOAP XML 服务
  6. ASMX SOAP JSON 服务
  7. ASMX REST XML 服务
  8. ASMX REST JSON 服务

到目前为止,我只使用过 ASMX SOAP 服务,这些服务非常易于使用和开发,但我从 iOS 开发人员那里得到了一些建议,即 JSON 有利于他们的开发。有时他们还建议准备 REST 服务,但在我看来,它们的安全性较低。

请告诉我以上八种方法中哪一种最适合小型用户群应用程序,哪一种最适合大型用户群应用程序。

【问题讨论】:

    标签: c# android .net ios web-services


    【解决方案1】:

    由于 iOS 和 Android 没有太多可用的 SOAP 实现,大量开发人员(包括我)正在选择基于 REST 的 Web 服务。

    选择 REST 服务而不是 SOAP Web 服务有几个原因,其中之一是简单,REST Web 服务通常需要实现 HTTP 请求以及生成纯 JSON 或 XML 的请求正文。

    SOAP 请求的不同之处仅在于所请求资源的额外细节,这些额外的细节/字节可能会在客户端编码请求时成为问题,当然还会导致传输开销。

    通过在 REST 上实现 web 服务,您可以利用两个很棒的库,对于 iOS,您有 Restkit,在 Android 上您可以使用 restletjackson

    根据上面所说,我强烈建议使用 WCF REST XML 服务或 WCF REST JSON 服务,其中 WCF REST JSON 将是最具性能的选项,因为序列化格式 (JSON) 是更有效的数据表示方式通过网络连接传输。

    【讨论】:

    • 有很多适用于 iOS(和其他平台)的 SOAP 实现和库,但问题是当您的 RESTful 服务存在像 github.com/AFNetworking/AFNetworking 这样的库时,为什么要使用它们;)我猜您所做的选择实际上取决于您是否必须使用由第三方托管的服务,或者您是否正在创建您计划使用的服务。
    【解决方案2】:

    看看ServiceStack

    Service Stack 是一个高性能 .NET Web 服务平台,可简化高性能 REST(JSON、XML、JSV、HTML、MsgPack、ProtoBuf、CSV)和 WCF SOAP Web 服务的开发。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-19
      • 1970-01-01
      • 1970-01-01
      • 2016-12-17
      • 1970-01-01
      相关资源
      最近更新 更多