【问题标题】:Constant Class for API Method NamesAPI 方法名称的常量类
【发布时间】:2014-04-25 14:28:40
【问题描述】:

我正在查看一个调用 API 的项目(在 C# 代码中,因此这是在服务器端进行的)。有几十种方法,所以你可能会看到类似 /API/GetValue1/API/Search//API/AnotherThing,或/API/Something/DoSomethingElse/1234411(some ID)

现在所有这些都被硬编码到每个调用中,并且可能不会改变,但你永远不知道。

是否可以将所有这些都移到常量类中,这样我就可以将出现的 /API/GetValue1 替换为 MyConstantClass.Value1 之类的东西,它会自动将其作为端点的 URL 路径?

【问题讨论】:

  • 很不清楚你的意思。它在客户端,在服务器端?另外,如果是在客户端,你的通话情况如何?
  • 服务器端。我在 .net 代码中使用 http 客户端进行这些调用
  • 如果你使用web api,你只需要在配置你的路由时给一个routeTemplate,Something/DoSomethingElse 会从控制器的名字和id 中出来......看看这个:@ 987654321@
  • 没有代码我们不知道你在说什么。如果您添加代码,它可能更适合 codereview.se
  • 我知道魔术字符串有点代码味道,但是......它似乎是一个冗余的抽象层。是的,它可能会帮助您更改方法名称。但是如果你有一个实质性的改变,你的代码中就会有一堆与方法不同的常量标识符。如果一个方法被删除或分成两个,会发生什么?

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


【解决方案1】:

这就是你应该做的。创建一个静态类以包含所有 API 端点。切勿在代码中直接使用魔术字符串,因为它们容易出错。

【讨论】:

    猜你喜欢
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 2011-10-07
    • 2015-12-15
    • 1970-01-01
    • 2011-02-20
    • 2011-11-22
    相关资源
    最近更新 更多