1. ホーム
  2. swagger

[解決済み] swagger.json(またはyaml)をエクスポートする方法

2023-06-25 03:45:16

質問

Swaggerの定義ファイルをエクスポートするにはどうすればよいですか。swagger.jsonやswagger.yamlなどのJSONまたはYAMLファイルである必要があります。

次のようなエンドポイントを持っているとします。 http://example.com//swagger/ui/index#! :

バージョンは api version: v1 .

私が見ることができる "Export" ボタンがありません。では、どのようにエクスポートすればよいのでしょうか?

どのように解決するのですか?

API定義のURLは、Swagger UIのトップバーに表示されます。

/v2/api-docs?group=full-petstore-api

したがって、完全なURLは次のようになります。

http://localhost:8080/v2/api-docs?group=full-petstore-api



Swagger UI の新しいバージョンでは、API 定義へのリンクが API タイトルの下に表示されることが多いので、リンクを右クリックして「名前を付けて保存」することができます。



Swagger UI に API 定義への可視リンクがない場合、ページ ソースを表示して url などのパラメータを指定します。

const ui = SwaggerUIBundle({
  url: "https://petstore.swagger.io/v2/swagger.json",     // <-------
  dom_id: '#swagger-ui',



が表示されない場合は url が表示されていない場合、または url がコード式の場合は、ブラウザの開発ツールを開いて ネットワーク タブに切り替え、キャッシュを無効にします。それからページをリフレッシュして、API定義ファイル( swagger.json , swagger.yaml , api-docs など) でフィルタリングすることができます。でフィルタリングすることができます。 XHR で絞り込むことができます。



別の方法として、実際の url を見つけるには、ブラウザのコンソールを使用して、UI バージョンに応じて次の値のいずれかを評価します。

  • Swagger UI 3.xです。

    ui.getConfigs().url
    
    
  • Swagger UI 2.xです。

    swaggerUi.api.url
    
    



OpenAPIの定義が.jsファイル内に埋め込まれていることがあります。この場合、このファイルを取り出して、余分な部分を取り除いてください。