【问题标题】:transforming RPC API to Rest API将 RPC API 转换为 Rest API
【发布时间】:2012-07-08 20:12:50
【问题描述】:

我开始使用 REST,并试图了解如何将遵循 RPC 样式的 Web 方法映射到 REST 样式。

public PerformanceResponse GetPerformance(int lineId, int maxNumberOfEntries, bool ascending)

这是我唯一与性能相关的操作,它只是从数据库中提取一些信息。

感谢您的帮助。

【问题讨论】:

  • 什么是线?如果一行是您的应用程序的基本组成部分,而性能是一行所具有的一个属性(在众多属性中),那么它可能应该是 yourapi.com/lines/lineId/performance/ascending/maxNumber
  • @japreiss lineId 在我的应用程序中是独一无二的,PerformanceResponse 是一个复杂的数据结构
  • 好的...但是一行是您应用程序的基本单元吗?就像 - 在 Stack Overflow 中,用户是一个基本单位,而声誉值不是。这是Users/userID/reputation/ 不是reputations/userID/
  • @japreiss,好的,我同意你的看法。但是如果我在做 yourapi.com/lines/lineId/performance/ascending/maxNumber 我的路由会是什么样子我知道我只会在我的控制器中采取行动

标签: c# .net rest asp.net-web-api


【解决方案1】:

这是我设计 API 的方式:

  • 创建性能控制器
  • 拥有一个带参数的 Get 方法
  • 设计网址为/Performance/{lineId}?maxNumberOfEntries={max}&ascending={asc}

【讨论】:

    【解决方案2】:

    http://example.com/Performance/1/2/0

    其中 1 是 lineID,2 是 maxNumber,0 是升序

    答案?
    (您的问题有点含糊,请具体说明)

    【讨论】:

      猜你喜欢
      • 2017-06-28
      • 2012-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-17
      • 2022-06-18
      • 1970-01-01
      • 2022-12-12
      相关资源
      最近更新 更多