springdoc Swagger UI 不发布 JSON
springdoc Swagger UI not POSTing JSON
我有一个 Spring Boot REST 应用程序,它使用 springdoc-openapi-ui 支持 Swagger。对于我的生活,我无法将生成的 Swagger UI 实际 POST JSON。相反,前端将 args 作为请求参数传递。如何让 Swagger UI 实际提交 JSON?
@Data
public static class SampleData {
private String info;
}
@PostMapping(value = "/test", consumes = "application/json")
public void postData(@ParameterObject @RequestBody SampleData data) {
// do something
}
在 Swagger UI 中单击“试用”和“执行”后,请求失败并显示:
{
"status": 415,
"error": "Unsupported Media Type",
...
}
因为 UI 试图 POST 这个:
http://localhost:8080/myapp/v1/test?info=test
生成的curl命令也不正确(不是POSTing JSON):
curl -X 'POST' \
'http://localhost:8080/myapp/v1/test?info=test' \
-H 'accept: */*' \
-d ''
请注意,如果我删除 @ParameterObject
注释,Swagger UI 将 POST JSON。但是,UI 不会呈现用户友好的形式(在完整示例中包含该 bean 中字段的文档注释)
我错过了什么?
Spring 引导:2.6.3,springdoc-openapi-ui:1.6.5
来自 springdoc
github 的解决方案是删除 @ParameterObject 注释并切换到 UI 中的“架构”视图以查看 POJO 字段的文档。不完全是我希望的解决方案,但它有效。 github.com/springdoc/springdoc-openapi/issues/1482
我有一个 Spring Boot REST 应用程序,它使用 springdoc-openapi-ui 支持 Swagger。对于我的生活,我无法将生成的 Swagger UI 实际 POST JSON。相反,前端将 args 作为请求参数传递。如何让 Swagger UI 实际提交 JSON?
@Data
public static class SampleData {
private String info;
}
@PostMapping(value = "/test", consumes = "application/json")
public void postData(@ParameterObject @RequestBody SampleData data) {
// do something
}
在 Swagger UI 中单击“试用”和“执行”后,请求失败并显示:
{
"status": 415,
"error": "Unsupported Media Type",
...
}
因为 UI 试图 POST 这个:
http://localhost:8080/myapp/v1/test?info=test
生成的curl命令也不正确(不是POSTing JSON):
curl -X 'POST' \
'http://localhost:8080/myapp/v1/test?info=test' \
-H 'accept: */*' \
-d ''
请注意,如果我删除 @ParameterObject
注释,Swagger UI 将 POST JSON。但是,UI 不会呈现用户友好的形式(在完整示例中包含该 bean 中字段的文档注释)
我错过了什么?
Spring 引导:2.6.3,springdoc-openapi-ui:1.6.5
来自 springdoc
github 的解决方案是删除 @ParameterObject 注释并切换到 UI 中的“架构”视图以查看 POJO 字段的文档。不完全是我希望的解决方案,但它有效。 github.com/springdoc/springdoc-openapi/issues/1482