【发布时间】: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