【发布时间】:2022-01-12 02:25:16
【问题描述】:
我有一个客户端(Blazor 服务器)应用程序,它使用 Web API 从 SQL 数据库获取数据。我的数据库包含一个“客户”表。我的 Web API 包含 CRUD(创建、读取、更新、删除)端点,如下所示:
(创建客户)HTTP POST → "/api/customers"
(阅读客户)HTTP GET → "/api/customers/{id}"
(更新客户)HTTP PUT → "/api/customers"
(删除客户)HTTP DELETE → "/api/customers/{id}"
但我想知道添加这样的端点(除了 CRUD)是否也是一种好习惯?
(检查客户名称是否存在)HTTP GET → "/api/customers/name-exist/{name}"
(获取客户数量)HTTP GET → "/api/customers/count/"
【问题讨论】:
-
如果您需要从您的 API 公开一些信息 - 您需要公开它)
-
拥有无意义的路线不是一个好习惯。创建好的动作名称并将它们添加到路由中。一些控制器可以有数百个动作
-
@Serge 你说的没有意义是什么意思?检查名称是否存在或检查客户数量对我的应用程序很重要。您能否扩展您的回答,也许给我一个好的动作名称的例子?我对此很陌生,并正在努力学习。谢谢。
-
@JPGarza 我的意思是当我读到你的路线时,我不知道它在做什么。其中哪个添加新的,删除等等
标签: .net asp.net-web-api blazor webapi minimal-apis