ホームページ  >  記事  >  バックエンド開発  >  OpenAPI トリマー Python ツール

OpenAPI トリマー Python ツール

WBOY
WBOYオリジナル
2024-08-23 19:00:32542ブラウズ

OpenAPI Trimmer Python Tool

OpenAPI Trimmer を使用して OpenAPI ファイルを簡素化する

大きな OpenAPI ファイルの管理は、特に特定のタスクに API のごく一部だけが必要な場合には、面倒になることがあります。ここで OpenAPI Trimmer が役に立ちます。これは、OpenAPI ファイルをトリミングして、必要なエンドポイントとデータ転送オブジェクト (DTO) のみを含めるように設計された軽量ツールです。

仕組みは?

大きな OpenAPI ファイルを操作しているが、必要なのは Quotes API に関連するエンドポイントだけであるとします。単一のコマンドでこれらのエンドポイントだけを簡単に抽出し、無関係な DTO を削除できます。

openapi-trimmer -i openapi.yaml \
  -p /v1/quotes,/v1/users \
  -ec CompanyConfigDto,UpdateCompanyConfigDto

このコマンドは次のことを行います:

  • -i openapi.yaml: 既存の OpenAPI YAML ファイルを入力として使用します。
  • -p /v1/quotes,/v1/users: /v1/quotes と /v1/users で始まるエンドポイントのみを保持します。
  • -ec CompanyConfigDto,UpdateCompanyConfigDto: 特定のコンポーネント (この場合は CompanyConfigDto および UpdateCompanyConfigDto) を除外します。

トリミングされた API 定義は、openapi-trimmer.yaml として保存されます。

検証

トリミングされた OpenAPI ファイルの整合性を確保するには、次のように検証します。

swagger-cli validate ./openapi-trimmer.yaml

この手順は、トリミングされた API ファイルをデプロイまたは共有する前に問題を発見するのに役立ちます。

インストール

PyPi から OpenAPI Trimmer を直接インストールできます:

pip install openapi-trimmer

詳細と最新の更新については、OpenAPI Trimmer PyPi ページをご覧ください。

GitHub リポジトリ: GitHub 上の OpenAPI Trimmer。

コマンドラインオプション

OpenAPI Trimmer には、その操作をカスタマイズするためのいくつかのオプションが用意されています。

  • -h, --help: ヘルプ情報を表示します。
  • -v, --version: バージョン番号を表示します。
  • -i INPUT、--input INPUT: 入力 YAML ファイルを指定します (必須)。
  • -o OUTPUT、--output OUTPUT: 出力ファイル名を定義します (オプション。デフォルトでは、入力ファイルに「-trimmed」が追加されます)。
  • -p PREFIXES、--prefixes PREFIXES: 出力に保持するパスをリストします (カンマ区切り)。
  • -ec EXCLUDE_COMPONENTS、--exclude-components EXCLUDE_COMPONENTS: 除外するコンポーネントをリストします (カンマ区切り)。

結論

OpenAPI Trimmer は、OpenAPI ファイルを合理化し、ファイルをより管理しやすく、特定のニーズに合わせてカスタマイズしたいと考えている開発者にとって不可欠なツールです。 API ドキュメントを準備している場合でも、内部使用のために API を簡素化している場合でも、OpenAPI Trimmer を使用すると、最も重要なことだけに集中することで時間と労力を節約できます。

以上がOpenAPI トリマー Python ツールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。