【发布时间】:2022-03-02 10:30:11
【问题描述】:
有没有办法在所有端点路由上自动添加后缀,例如 .json。
v1/users.json
v1/users/{id}.json
所以到目前为止我所尝试的是我创建了一个看起来像这样的 BaseController
[ApiController]
[Route("v1/[controller].json")]
public class BaseController : ControllerBase
{
}
但每次我将它用于我的控制器时,它看起来都是这样的
v1/users.json
v1/users.json/{id}
【问题讨论】:
-
参数被传递给控制器动作。所以
{id}.json应该映射到控制器动作而不是控制器。 -
@Chetan 所以需要总是添加每个动作?是否有路由配置功能可以始终将其添加为后缀?
-
您可以使用重写中间件在所有端点上接受
.json,但在路由期间将其丢弃:docs.microsoft.com/en-us/aspnet/core/fundamentals/… -
我先看看你们的建议。谢谢
标签: c# api rest asp.net-core