Làm cách nào để hiển thị tài liệu API ứng dụng bằng cách sử dụng springdoc-openapi-webflux-ui?


8

Tôi đọc tài liệu này https://springdoc.github.io/springdoc-openapi-demos/ để sử dụng springdoc-openapi-webflux-ui. Như tài liệu nói tôi vừa thêm springdoc-openapi-webflux-uithư viện vào ứng dụng của mình:implementation('org.springdoc:springdoc-openapi-webflux-ui:1.2.26')

Ngoài ra, tôi đã tùy chỉnh đường dẫn đến API trong application.yml:

springdoc:
  swagger-ui:
    path: /swagger-ui.html

Khi tôi khởi động ứng dụng và truy cập http: // localhost: 8080 / swagger-ui.html , nó sẽ chuyển hướng tôi đến http: // localhost: 8080 / webjars / swagger-ui / index.html? ConfigUrl = / v3 / api -docs / swagger-config . Trong trang đó, tôi đã gặp một lỗi:

Whitelabel Error Page
This application has no configured error view, so you are seeing this as a fallback.
Mon Jan 20 05:16:10 UTC 2020
[7192d9dc] There was an unexpected error (type=Not Found, status=404).
No matching handler

Câu hỏi là: Tôi có nên thêm cấu hình bổ sung vào ứng dụng của mình để hiển thị tài liệu API không?

PS: Tôi sử dụng spring.boot 2.2.2: LIÊN QUAN


Tuy nhiên, tôi có thể lấy tài liệu từ localhost: 8080 / v3 / api-docs cung cấp cho tôi tệp json.
Seydazimov Nurbol

Câu trả lời:


2

Theo mặc định, bạn chỉ cần thêm sự phụ thuộc của springdoc-openapi-webflux-ui.

 <dependency>
      <groupId>org.springdoc</groupId>
      <artifactId>springdoc-openapi-webflux-ui</artifactId>
      <version>1.2.32</version>
   </dependency>

Bạn có thể xem mã trình diễn:

Bạn có thể kiểm tra classpath của bạn và thử chạy ứng dụng từ bên ngoài IDE. Đảm bảo bạn có các cài đặt chính xác của IDE tùy thuộc vào Công cụ xây dựng của bạn:

Ngoài ra, vui lòng kiểm tra xem bạn có đang sử dụng @EnableWebFlux không.

Như đã nêu trong tài liệu tham khảo Spring Boot, khi bạn sử dụng @EnableWebFlux, bạn nói với Spring Boot rằng bạn muốn kiểm soát hoàn toàn cấu hình WebFlux và vô hiệu hóa tất cả cấu hình tự động cho điều này (bao gồm cả tài nguyên tĩnh):

Bạn có hai giải pháp:

  1. Xóa @EnableWebFlux
  2. Nếu bạn thực sự muốn kiểm soát việc tạo Bean và bạn hoàn toàn muốn sử dụng @EnableWebFlux, thì bạn cần thêm một triển khai WebFluxConfigker.

Điều này đã được thảo luận ở đây:


Tôi không chạy một ứng dụng từ IDE.
Seydazimov Nurbol
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.