ASP.NET Core API 的 GET 请求中的可选参数不适用于 Swagger

单脚意志

我正在处理一个看起来像这样的端点:

GET {{url}}/v1.0/GroupsInfo/StuffToGet/1/2/hea

其中 2 个整数是特定的 id,最后的文本是搜索词。

我希望最后一个参数(搜索文本)是可选的。我已经使用以下方法完成了这项工作,但在 Swagger 中它似乎不是强制性的:

[Route("[action]/{catId:int}/{dogId:int}/{search?}")]
public IActionResult StuffToGet(int catId, int dogId, string search)
{
    // do stuff
}

Swagger 忽略了路由约束中 Search 参数末尾的问号。

这是一个已知问题,还是我需要纠正一些自定义代码才能让 Swagger 识别该可选标志?

哔叽

您的变体将正常工作,但如果您对 swagger 有疑问,请尝试此操作

[Route("[action]/{catId:int}/{dogId:int}]
[Route("[action]/{catId:int}/{dogId:int}/{search}")]
public IActionResult StuffToGet(int catId, int dogId, string search)
{
    // do stuff
}

或者这个


[Route("StuffToGet/{catId:int}/{dogId:int}/{search}")]
public IActionResult StuffToGet(int catId, int dogId, string search)
{
    // do stuff
}
[Route("StaffToGet/{catId:int}/{dogId:int}]
public IActionResult StuffToGet(int catId, int dogId)
{
   return StuffToGet(catId, dogId,string.empty);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Asp.net Core + Swagger:如何显示 GET 类型的 API

Asp.net .core web api 版本控制不适用于 Url 路径段

调用SignalR Hub不适用于Asp.Net Core Web API

Postman JSON 不适用于 ASP.NET Core Web API

ASP.NET Core Web API 不适用于 Azure

Swashbuckle / Swagger + ASP.Net Core:“无法加载API定义”

Cutomize Swagger UI ASP.NET Core Web API

创建 swagger 示例模型 asp.net core web api

如何在运行于ASP.NET Core 3.1的启用OData的Web API中添加Swagger

使用ASP.NET Core Web API重命名Swashbuckle 6(Swagger)中的模型

如何在 ASP.NET Core API 中的 Swagger 中将注释显示为描述段落

ASP.NET Core API:身份验证弹出窗口未显示在 Swagger UI 中

FromBody路由不适用于ASP.NET Core

ASP.NET Core 3.1中的asp-action不适用于端点路由

在 ASP.NET Core 中以编程方式获取 Swagger URL

.net Core API 不适用于 IIS

ASP.NET Core WEB API API 方法中 GET 参数的问题

路由不适用于 asp.net api 项目

在asp.net core 2.1中产生不适用于xml的数据注释

共享布局视图不适用于ASP.NET Core 2.1中的所有视图

我在 ASP.NET Core 2.2 Web API 中设置了 JWT 中间件。它仅适用于 RSA256 而不适用于 HS256

ASP.NET Core 2.1 Swagger(swashbuckle)网址模板可选参数

如何在 ASP.NET Core 2.2 REST API 的 GET Action 中接收多个对象参数?

Asp.Net Core 3.1 post 请求不适用于服务器上的 Angular 8

ASP.NET Core - API 多参数

是否可以在 ASP .NET Core 中使用 Swashbuckle 以 Swagger 2.0 和 Open API 3 格式公开相同的 Swagger JSON?

ASP.NET Core Web API 在 API GET 請求中檢索空白記錄

将Swagger添加到ASP.Net Core Web API

将MiniProfiler连接到ASP.NET Core Web API Swagger