我正在用ASP。Net核心2.1 Web API项目。下面是一个示例控制器操作方法:
[HttpGet]
public string GetString([Required, MaxLength(20)] string name) =>
$"Hi there, {name}.";
这是我在 Swagger 文档中得到的内容。如您所见,Swagger 显示“必需”
属性,但不显示“最大长度”
属性:
如果我在一个DTO类上使用< code>Required和< code>MaxLength属性,这是一个POST操作方法的参数,那么Swagger会显示这两个属性:
如何让Swagger显示查询参数的MaxLength
(和其他)验证属性?
注意:我试图用一个类替换<code>字符串名称
在 .NET Core 中,可以使用具有给定顺序的“显示共同扩展 = true
”(“配置对象”位于顶部)。
public static IApplicationBuilder UseR6SwaggerDocumentationUI(
this IApplicationBuilder app)
{
app.UseSwagger();
app.UseSwaggerUI(c =>
{
//Allow to add addition attribute info on doc. like [MaxLength(50)]
c.ConfigObject = new ConfigObject
{
ShowCommonExtensions = true
};
c.SwaggerEndpoint("/swagger/v1/swagger.json", "Asptricks.net API");
c.RoutePrefix = "api_documentation/index";
c.InjectStylesheet("/swagger-ui/custom.css");
c.InjectJavascript("/swagger-ui/custom.js");
c.SupportedSubmitMethods( new[] { SubmitMethod.Patch });
//Collapse model near example.
c.DefaultModelExpandDepth(0);
//Remove separate model definition.
c.DefaultModelsExpandDepth(-1);
});
return app;
}
我有以下Azure函数,它是HTTP触发的。我已经使用这里的链接为我的endpoint设置了Swagger。下面的API需要一组查询字符串参数,即“name”、“email”、“phone”,因此它可以针对目标对象进行一些搜索。目前,函数的主体当然还没有实现,这对这个问题来说并不重要。 我的问题是:如何在swagger UI中显示查询字符串参数? 函数:
Swagger UI 不显示请求参数的验证信息。我想显示参数的最小值,最大值,格式,模式(正则表达式)。有谁知道我在Swagger UI上表达参数验证信息的方式吗?
我用swagger,OpenAPI版本3为web API编写文档。我使用swagger php包从注释生成文档化的json。我有一个服务,在那里我发送post请求以添加新用户,请求的主体是json(因此参数作为json对象发送)。它有两个参数-电子邮件和密码。请求正文看起来像 这是大摇大摆的 YAML 这里是包含请求参数的参考模式(< code >/components/schemas/sign
在我的Zend应用程序中,我正在为移动应用程序编写一个小API。为了方便移动开发者,我使用了Swagger。到目前为止,除了一个GET请求外,一切正常。 当我呼叫/user/messages/{sessionToken}时?numMessages={numMessages} 有人知道我的错误吗? 欢迎任何帮助。 诚挚的问候 罗特曼 更新:按照建议,我将两个参数类型都更改为“查询”并更改了路径: 但
两种情况下生成的 XML 文件相同 知道为什么在生成文档时会有这种差异吗?我在搜索此内容时找不到任何相关内容。 如何(强制)将所有数据模型包含在模式部分中?非常感谢任何指针或资源。 谢谢你