UI 上未显示 Swagger 示例
Swagger examples are not shown on UI
无法在 swagger 中获取示例字段值 UI。
@ApiOperation(value = "Sample API to test swagger doc", response = SampleResponse.class)
@ApiImplicitParams({
@ApiImplicitParam(
name = "sampleResponse",
dataType = "SampleResponse",
examples = @io.swagger.annotations.Example(
value = {
@ExampleProperty(value = "{'code': '123', 'msg':'message'}", mediaType = "application/json")
}))
})
@ApiResponses(value = {
@ApiResponse(code = 200, response = SampleResponse.class, message = "Success", examples = @io.swagger.annotations.Example(
value = {
@ExampleProperty(value = "{'code': '123', 'message':'success'}", mediaType = "*/*")
})),
@ApiResponse(code = 401, message = "UnAuthorized"),
@ApiResponse(code = 400, message = "Invalid ID supplied", response = ApiResponse.class,
examples = @Example(value =
{
@ExampleProperty(mediaType = "application/json", value = "{\"code\" : \"42\", \"message\" : \"Invalid ID supplied\"}")
}
))
})
@PosMapping(value = "/test", produces = MediaType.APPLICATION_JSON_VALUE)
public SampleResponse get(@ApiParam(required = true) @RequestBody SampleResponse sampleResponse) {
pom.xml
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
UI 中缺少使用注释 @ExampleProperty 定义的示例。
在下图中 swagger UI 示例字段显示为默认数据类型值。
我在 swagger2 中找不到太多东西,但升级到 openapi,这可以通过使用 @io.swagger.v3.oas.annotations.parameters.RequestBody
定义请求主体及其示例和 @io.swagger.v3.oas.annotations.responses.ApiResponse
定义响应来实现。
无法在 swagger 中获取示例字段值 UI。
@ApiOperation(value = "Sample API to test swagger doc", response = SampleResponse.class)
@ApiImplicitParams({
@ApiImplicitParam(
name = "sampleResponse",
dataType = "SampleResponse",
examples = @io.swagger.annotations.Example(
value = {
@ExampleProperty(value = "{'code': '123', 'msg':'message'}", mediaType = "application/json")
}))
})
@ApiResponses(value = {
@ApiResponse(code = 200, response = SampleResponse.class, message = "Success", examples = @io.swagger.annotations.Example(
value = {
@ExampleProperty(value = "{'code': '123', 'message':'success'}", mediaType = "*/*")
})),
@ApiResponse(code = 401, message = "UnAuthorized"),
@ApiResponse(code = 400, message = "Invalid ID supplied", response = ApiResponse.class,
examples = @Example(value =
{
@ExampleProperty(mediaType = "application/json", value = "{\"code\" : \"42\", \"message\" : \"Invalid ID supplied\"}")
}
))
})
@PosMapping(value = "/test", produces = MediaType.APPLICATION_JSON_VALUE)
public SampleResponse get(@ApiParam(required = true) @RequestBody SampleResponse sampleResponse) {
pom.xml
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
UI 中缺少使用注释 @ExampleProperty 定义的示例。
在下图中 swagger UI 示例字段显示为默认数据类型值。
我在 swagger2 中找不到太多东西,但升级到 openapi,这可以通过使用 @io.swagger.v3.oas.annotations.parameters.RequestBody
定义请求主体及其示例和 @io.swagger.v3.oas.annotations.responses.ApiResponse
定义响应来实现。