问题描述
我创建了一个类似于 @javax.validation.constraints.Pattern
的自定义验证注释。对于 @Pattern
,swagger 会生成一个不错的架构,如下所示:
summary: my summary
operationId: my_operation_id
parameters:
- name: myParam
in: header
required: true
schema:
maxLength: 30
pattern: ^\w+$ <--- THIS ONE
type: string
但是对于我的注释 @CustomPattern
(假设),它没有!生成的 swagger.yml 在 pattern
下没有 schema
键。我怎样才能创建一个?
这是在 Micronaut 中。
解决方法
我需要为我的控制器方法的参数生成 swagger.yml。
只需使用 @io.swagger.v3.oas.annotations.media.Schema
属性粘贴 pattern
注释即可。或者如果它是一个列表,那么你可以使用 @io.swagger.v3.oas.annotations.media.ArraySchema(schema = @Schema(pattern = ?))
那就行了。