【发布时间】:2020-02-01 20:37:36
【问题描述】:
我有以下 api,我需要有两个内容类型为 application/x-www-form-urlencoded 的参数,因此我使用 @RequestBody 而不是 @Parameter
@Operation(summary = "Revoke given permissions", description = "Allows admin to revoke permissions to users")
@RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
public void revokePermission(
@RequestBody(description = "the permission id", content = @Content(mediaType = "application/x-www-form-urlencoded",
schema = { @Schema(type = "String", name = "permission_id",
description = "id of the permission to be revoked", required = true)},
{ @Schema(type = "String", name = "permission_type",
description = "the permission type")}))
String permission_id, String permissionType) {
do_something();
}
我需要 swagger.json 类似于下面的示例,但我不知道如何使用 springdoc 生成它。我也尝试了@ArraySchema,但我没有得到我需要的输出。我在语法上犯了一些错误,无法在线找到示例。
"requestBody": {
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"properties": {
"permission_id": {
"description": "id of the permission to be revoked",
"type": "string"
},
"permission_type": {
"description": "the permission type",
"type": "string"
}
},
"required": ["permission_id"]
}
}
}
}
非常感谢任何帮助。 TIA
【问题讨论】:
标签: spring-boot openapi swagger-3.0 springdoc springdoc-openui