Tom*_*ing 6 spring-boot openapi-generator
我最近尝试为我的 Sprint Boot 应用程序生成 OpenAPI 文档。我将以下几行添加到我的pom.xml
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-ui</artifactId>
<version>1.2.30</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
但是当我在本地主机上点击 swagger-ui URL 时,我得到了这个页面

我检查了 JSON,/v3/api-docs并得到了以下开头的响应:
"{\"openapi\":\"3.0.1\",\"info\":{\"title\":\"OpenAPI definition\",\"version\":\"v0\"},\"servers\":[{\"url\":\"https://localhost:8900/tds\",
Run Code Online (Sandbox Code Playgroud)
我可以看到正在指定该openapi字段,但看起来整个响应都是字符串化的,而不仅仅是 JSON。由于 OpenAPI 似乎没有任何配置,我认为它是从我的 Spring Boot 配置中的某些内容获取的,但我不知道在哪里。
我有同样的问题。就我而言,我已经configureMessageConverters(List<HttpMessageConverter<?>> converters)在扩展类中重写了WebMvcConfigurer. Springdoc 使用在那里配置的转换器。
首先,我首先将一些自定义转换器添加到转换器中,然后将StringHttpMessageConverter. canWrite(Class<?> clazz, MediaType mediaType)两个转换器的方法都true返回clazz=String.class和mediaType= application/json。因此使用第一个,它将 JSON 作为字符串转义。
当我更改它以便StringHttpMessageConverter首先添加 时,会使用该值,并序列化 JSON 对象而不转义。
| 归档时间: |
|
| 查看次数: |
1921 次 |
| 最近记录: |