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

Swagger/springfox自动生成响应示例

朱起运
2023-03-14

目前正在使用springfox 2.9.2大摇大摆地记录Spring中创建的API。我想在文档中添加示例响应,如下图所示;

我的理解是,我可以做类似的事情:

@ApiResponses(value = {
    @ApiResponse(code = 200, message = "Success", 
            examples = @io.swagger.annotations.Example(
                value = {
                    @ExampleProperty(value = "{'snapshot':{'type': 'AAA'}}", mediaType = "application/json") 
                }))

在本例中,我将此代码片段放在GET方法的正上方。不幸的是,上面的两个示例总是显示:标识符预期错误

但我也看到我也能做到这一点:

@ApiResponses(value = {
    ApiResponse(code = 200, message = "Success", response = MyModel.class,
    )
})

我还看到我可以添加一个@ApiOperation级别的示例:

@ApiOperation(value = "Create a Account", nickname = "createAccount", notes = "Create a account", response = AccountResponse.class, tags={  })

我的问题是:

>

将Swagger/Springfox指向my model/bean,让它自动生成示例响应,并随着bean/model的每次更新而自动更新,这将是一个理想的选择。这就是上面第二段代码应该做的吗?

共有1个答案

邵刚洁
2023-03-14

为dto定义注释示例:

@ApiModel("Crop")
public class CropDto {

    @ApiModelProperty(name = "Unique guid", position = 1, example = "7aaee0e2-6884-4fd7-ba63-21d76723dce2")
    public UUID id;
    @ApiModelProperty(name = "Unique code", position = 2, example = "squ")
    public String code;
    @ApiModelProperty(name = "Unique name", position = 3, example = "Squash")
    public String name;
    @ApiModelProperty(position = 4, example = "Cucurbita pepo L.")
    public String description;
}
 类似资料:
  • 我正在使用gRPC服务的protoc gen swagger生成swagger json文件。输出json是用空响应示例生成的,我想向定义中添加响应示例,以便在生成的json中自动填充。 这是我目前的定义。 当我使用命令生成swagger文件时 我得到一个包含此用户对象定义的swagger文件 我想用如下示例值生成它:

  • 为了添加更多细节,documentKey和abstractDocument都被注释了。 下面是没有任何注释的DocumentChangeSet类。

  • 我在Spring Boot应用程序中使用Swagger 2.6.1启用了API文档。页面(swagger-ui.html)加载良好,但控制器文档包含所有谓词(PUT、GET、PATCH、POST等),即使我的控制器只有GET操作。如何禁用UI文档中的其他动词?

  • Springfox昂首阔步的用户界面有错误的基本网址。我不清楚19080端口从哪里来,因为没有服务监听该端口。我需要做什么设置才能让springfox生成正确的基本网址? Swagger UI http://dev.example.com/newapi/swagger-ui.html 错误的基本URL 基本URL:dev.example。com:19080/newapi 正确的基本URL 基本UR

  • 我想使用Swagger为我的Spring Boot API提供一个API文档。我设法让Springfox 2.3.0正常工作,除了返回ObjectNode的控制器外,其他一切都正常工作。Swagger尝试将返回的类(ObjectNode)转换为JSON表示,结果如下: 现在我知道了,那个大摇大摆的人猜不出我构建的JSON中包含哪些值,但我想以任何形式手动添加正确的ResponseModel。 控制

  • 我希望文档的显示方式类似于它在特定于应用程序的上下文路径下的文档中提到的方式。你能告诉我我错过了什么吗?