【问题标题】:What is the best way to consume REST services in Windows Store Apps?在 Windows 应用商店应用中使用 REST 服务的最佳方式是什么?
【发布时间】:2012-11-29 11:49:08
【问题描述】:

我是 Windows 应用商店应用程序开发的新手,我需要使用基于 REST 的 Web 服务。

我的问题是,在过去几年中,为使用现代 Web 服务而开发的开发技术发生了如此多的变化,最终很难找到最简单的方法,尤其是最常用的方法。实现这一目标的最新解决方案。

我想在使用 C# 的 Windows 应用商店应用程序中使用 Discogs API。我只需要使用 GET。

谢谢。


编辑:我问在 Windows 应用商店应用程序中使用 REST 服务的最佳方式是什么,主要原因是我需要一个兼容异步的解决方案。

【问题讨论】:

    标签: c# rest asynchronous windows-store-apps discogs-api


    【解决方案1】:

    这是一个post,其中包含从 .NET 使用 REST 时的几个库建议

    编辑:

    但是,除非您需要 THIS 框架提供的东西...我只会使用已经为您构建的 API 接口!

    【讨论】:

    • Discogs API 看起来很棒,但似乎不支持异步,因为它最初是使用 C# 4.0 构建的。我在 Codeplex 上提出了功能请求。
    • @Ucodia 这会稍微增加所需的工作量,但你能不能简单地将工作交给一个线程并且......在某种意义上让它成为一个异步请求?我认为构建一个小型包装器来完成线程中的任务(或简单地下载源代码并进行修改)会比编写一个全新的 API 更容易。
    • 当然,要使其合规需要相当多的工作。但是我仍然必须编写自己的包装 API 来支持异步调用。好在我只需要搜索功能,所以我不会有太多内容。
    • 我最终放弃了 DiscogsNet,因为它与 WinRT 不兼容。
    • 伤心...这里有很好的信息。可能会用这样的信息更新您的原始问题,以防万一有人不阅读这些 cmets。
    【解决方案2】:

    当然,.NET 中有 HttpWebRequest 就足够了。如果您想要一些抽象,可以使用 RestSharp (http://restsharp.org/) 等选项。

    【讨论】:

    • 好点是 HttpWebRequest 兼容异步。
    • 我最终选择了 HttpWebRequest,因为它给我带来了灵活性和异步性。请注意,RestSharp 与 WinRT 不兼容。
    • @Ucodia 感谢您指定 RestSharp 的兼容性。
    【解决方案3】:

    我也可以选择另一种选择:HttpClient 类将是 .NET 4.5(包括 Windows 应用商店应用程序)中针对您的方案的“开箱即用”推荐。默认情况下,它利用HttpWebRequest

    在开发中心上有一个QuickStart: Connecting using HttpClient,它解决了 GET 场景,应该会让你走得很远。还有一个完整的HttpClient 示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多