Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot springdoc openapi如何将字符串数组显示为响应_Spring Boot_Springdoc_Springdoc Openapi Ui_Springdoc Openui_Springdoc Ui - Fatal编程技术网

Spring boot springdoc openapi如何将字符串数组显示为响应

Spring boot springdoc openapi如何将字符串数组显示为响应,spring-boot,springdoc,springdoc-openapi-ui,springdoc-openui,springdoc-ui,Spring Boot,Springdoc,Springdoc Openapi Ui,Springdoc Openui,Springdoc Ui,关于如何使用springdocs openapi库(1.5.7)获得以下输出,web上没有很好的例子。我希望获得以下输出: [ "A", "B", "C" ] 这是基于所提供示例的代码 @Operation(summary = "") @ApiResponses(value = { @ApiResponse(responseCode = "200", desc

关于如何使用springdocs openapi库(1.5.7)获得以下输出,web上没有很好的例子。我希望获得以下输出:

[
  "A", "B", "C"
]
这是基于所提供示例的代码

@Operation(summary = "")
    @ApiResponses(value = {
            @ApiResponse(responseCode = "200", description = "OK",
                    content = {@Content(mediaType = "application/json",
                            array = @ArraySchema(schema = @Schema(implementation = String.class)),
                            examples = {@ExampleObject("A"), @ExampleObject("B"), @ExampleObject("C")}
                    )})
这将产生以下输出

[
  "string"
]

如何通过springdocs openapi库实现上面列出的输出[“A”、“B”、“C”]?

您错误地使用了
@ExampleObject
value
属性(如果不指定任何内容,也是默认属性)接受示例负载的JSON序列化对象

因此,要获得
[“A”,“B”]
,您不需要多个
@ExampleObject
,而是需要一个示例的注释

因此,如下所示更新代码应该是有帮助的

@操作(summary=“Some method”)
@ApiResponses(值={
@ApiResponse(responseCode=“200”,description=“确定”,内容={
@内容(
mediaType=mediaType.APPLICATION\u JSON\u值,
array=@ArraySchema(schema=@schema(implementation=String.class)),
示例={
@示例对象(“[\'A\',\'B\']”)
}
)
})
})
下面显示的是上述代码的输出

要指定多个示例,应该有多个示例对象,如下所示

@操作(summary=“Some method”)
@ApiResponses(值={
@ApiResponse(responseCode=“200”,description=“确定”,内容={
@内容(
mediaType=mediaType.APPLICATION\u JSON\u值,
array=@ArraySchema(schema=@schema(implementation=String.class)),
示例={
@ExampleObject(name=“Example 1”,summary=“summary 1”,description=“Some desc”,value=“[\“A\”,\“B\”]),
@ExampleObject(name=“Example 2”,summary=“summary 2”,description=“Some desc”,value=“[\“C\”,\“D\”]))
}
)
})
})
注意
@ExampleObject
名称
属性用于在规范文件内部识别示例

“响应”:{
"200": {
“说明”:“确定”,
“内容”:{
“应用程序/json”:{
“模式”:{
“类型”:“数组”,
“项目”:{
“类型”:“字符串”
}
},
“例子”:{
“例1”:{
“摘要”:“摘要1”,
“描述”:“一些描述”,
“价值”:[
“A”,
“B”
]
},
“例2”:{
“摘要”:“摘要2”,
“描述”:“一些描述”,
“价值”:[
“C”,
“D”
]
}
}
}
}
}
}
输出如下图所示

谢谢!我忽略了一个细节,如果其他人遇到这个问题,我希望它能帮助他们。