ディープリンク
Swagger UIを使用すると、仕様内のタグや操作にディープリンクすることができます。Swagger UIが実行時にURLフラグメントを提供されると、指定されたタグまたは操作に自動的に展開され、スクロールします。
使用方法
👉🏼 この機能を有効にするには、Swagger UIの設定にdeepLinking: trueを追加してください。これはdist/index.htmlでデモンストレーションされています。
タグまたは操作を展開すると、Swagger UIはそのURLフラグメントをアイテムへのディープリンクで自動的に更新します。逆に、タグまたは操作を折りたたむと、Swagger UIはURLフラグメントをクリアします。
タグ名または操作パスを右クリックして、そのタグまたは操作へのリンクをコピーすることもできます。
フラグメント形式
フラグメントは次の2つのいずれかの形式でフォーマットされます。
- 特定のタグのフォーカスをトリガーするには
#/{tagName} - タグ内の特定の操作のフォーカスをトリガーするには
#/{tagName}/{operationId}
operationIdは、存在する場合、仕様で明示的に指定されたoperationIdです。そうでない場合、Swagger UIは、操作のパスとメソッドを結合し、英数字以外の文字をエスケープすることで、暗黙のoperationIdを生成します。
FAQ
URLフラグメントを制御する必要があるアプリケーションでSwagger UIを使用しています。ディープリンクを無効にするにはどうすればよいですか?
この機能はデフォルトで無効になっていますが、設定項目としてSwagger UIにdeepLinking: falseを渡すことで、確実に無効にすることができます。
複数のタグや操作にリンクできますか?
いいえ、これはサポートされていません。
リンクしている操作またはタグ以外はすべて折りたたむことはできますか?
はい、docExpansion: noneを使用して、すべてのタグと操作を折りたたむことができます。ディープリンクは設定よりも優先されるため、指定したタグまたは操作のみが展開されます。