Jersey提供了JAX-RS MessageBodyWriter
,可以将BufferedImage
自动转换为image/png
之类的媒体类型。
@Api("My Service")
@Component
@Path("/")
@Produces("image/png")
public interface MyService {
@Path("map")
@GET
BufferedImage generateMap();
}
当Swagger扫描此资源时,似乎无法理解正在发生的转换并将java.awt.image.BufferedImage
的整个内部架构描述到api中。
...
produces:
- "image/png"
responses:
200:
description: "successful operation"
schema:
$ref: "#/definitions/BufferedImage"
... ~700 lines describing Java's BufferedImage object
我们如何使用Swagger注释将响应正确显示为二进制文件?