当前位置: 首页 > 知识库问答 >
问题:

Swagger UI-可空值

夹谷弘亮
2023-03-14

我们有一个SpringBoot(版本1.5.12)REST Api,带有springfox-swagger2和springfox-swagger-ui(版本2.9.2)

是否可以在Swagger UI中拥有可空属性(使用Swagger.yaml配置文件或Swagger注释)?

{ 
  id: 2
  name: 'test'
  surname: null
}

姓氏应该是字符串或null(默认为null)。
如果不可能,我们是否可以重写一些swagger类来获得此行为?

谢谢

共有1个答案

涂泰平
2023-03-14

是的,可以有可空/可选的属性。为此,将@apimodelproperty(io.swager.annotations)注释中的required属性设置为false(默认情况下实际上是false)。

@ApiModelProperty(required = false, value = "Surname")
private String surname;
 类似资料:
  • SwaggerUI 汉化版;修改了部分样式;结合SpringFox SpringFox-Swagger-UI实现API管理

  • 我一直在尝试使用最新版本的SpringMVC实现来设置Swagger Spring-MVC和Swagger UI:Swagger Spring-MVC 我已经能够使初始设置正常工作,但当我导航到我的SwaggerUI页面时,我收到一个错误,它无法访问我的api,因为“服务器返回未定义”。当我查看firebug时,它说它得到了401授权。 当您第一次导航到SwaggerUI URL时,会弹出一个对话

  • 我想在Rest API(spring-mvc)文档中使用Springfox SwaggerUI。我在@RequestMapping注释中使用版本头,但是如果我有相同方法的两个版本,在SwaggerUI中只能看到一个。 上面的代码导致api文档中只有一个可见的方法。 考虑到我的版本头,是否有任何选项可以将Swagger配置为不同的endpoint?

  • 我们知道我们可以将null赋给可为null的类型。例如: 我们知道第二种说法是有效的,因为有人告诉我们它是有效的,我们只是接受它,而不问为什么。但如果查看的源代码,则为: 我们可以将赋给为的原因是由于隐式运算符,它允许您隐式强制转换int为。根据隐式运算符的规则,作为的右手边,必须是结构类型,但显然不是合法的结构值,那么如何做(更不用说本身就是一个结构),为什么不违反隐式运算符规则

  • 在其他地方,我需要从中的内容创建一个。所以,我这样做: 此外,在这里使用进行一些转换,以便每次都用每一个小东西清理它,一方面为我提供编译时保证和安全性,但这在大多数情况下是一个大麻烦。有没有一些短手来绕过这些情况?

  • 我有返回给我一些JSON后端。 我将其解析为我的类: 然后我从服务器(使用rxJava)检索数据,没有任何错误。但是我预料到了一个错误,因为我认为我应该做这样的事情(以防止GSON转换器错误,因为在我的JSON响应中不存在): 在从后端接收数据并将其解析到带有构造函数的SomeData类(不带def值)之后,notNullableValue的值==NULL。 据我所知,在Kotlin中不是可空值可