springdoc-openapi-webflux-uiを使用してアプリAPIドキュメントを表示する方法


8

私はこのhttps://springdoc.github.io/springdoc-openapi-demos/ドキュメントを読んで、springdoc-openapi-webflux-uiを使用します。ドキュメントが言ったspringdoc-openapi-webflux-uiように、私はアプリにライブラリを追加しました:implementation('org.springdoc:springdoc-openapi-webflux-ui:1.2.26')

さらに、application.ymlでAPIへのパスをカスタマイズしました。

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

アプリを起動してhttp:// localhost:8080 / swagger-ui.htmlにアクセスするとhttp:// localhost:8080 / webjars / swagger-ui / index.html?configUrl = / v3 / apiにリダイレクトされます-docs / swagger-config。そのページで、エラーが発生しました:

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

質問です:アプリに追加の構成を追加してAPIドキュメントを表示する必要がありますか?

PS:私はspring.boot 2.2.2:RELEASEを使用します


ただし、jsonファイルを提供するlocalhost:8080 / v3 / api-docsからドキュメントを取得できます。
Seydazimov Nurbol

回答:


2

デフォルトでは、springdoc-openapi-webflux-uiの依存関係を追加するだけです。

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

デモコードを見ることができます:

クラスパスを確認し、IDEの外部からアプリケーションを実行してみてください。ビルドツールに応じて、IDEの設定が正しいことを確認します。

また、@ EnableWebFluxを使用しているかどうかを確認してください。

Spring Bootのリファレンスドキュメントに記載されているように、@ EnableWebFluxを使用する場合、WebFlux構成を完全に制御し、これ(静的リソースを含む)のすべての自動構成を無効にすることをSpring Bootに指示します。

あなたには2つの解決策があります:

  1. @EnableWebFluxを削除します。
  2. 本当にBeanの作成を制御したいが、@ EnableWebFluxを絶対に使用したい場合は、WebFluxConfigurerの実装を追加する必要があります。

これはここで議論されました:


IDEからアプリを実行していません。
Seydazimov Nurbol
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.