PhpStorm 2020.2 ヘルプ

OpenAPI

OpenAPI 仕様(OAS)は、REST API の記述形式です。Swagger(英語) は、REST API を記述、文書化、および使用するための、この仕様に基づくツールのセットです。詳細については、Swagger のドキュメント(英語)を参照してください。

PhpStorm は、YAML および JSON ファイルの OpenAPI 定義のコーディング支援、およびサーバースタブ、クライアントライブラリ(SDK)、および OpenAPI 仕様に基づくドキュメントを生成するための Swagger Codegen(英語) との統合を提供します。さらに、定義されたエンドポイントに対して HTTP リクエストを作成し、組み込みの HTTP クライアント(英語)を介して実行できます。

OpenAPI 仕様を作成する

PhpStorm は、関連するコーディング支援付きの専用 OpenAPI 仕様ファイルタイプを認識します。これらは、OpenAPI 仕様バージョンの定義を含む通常の YAML または JSON ファイルです。

  1. メインメニューからファイル | 新規 | OpenAPI 仕様を選択するか、Alt+Insert を押して OpenAPI 仕様を選択します。

  2. ファイルの名前を指定し、仕様バージョンとファイル形式を選択します。

新しい OpenAPI 仕様ファイルには、形式とバージョンに応じて、次のテンプレートが含まれています。

openapi: 3.0.0 info: title: Title description: Title version: 1.0.0 servers: - url: 'https' paths:
{ "openapi": "3.0.0", "info": { "title": "Title", "description": "Title", "version": "1.0.0" }, "servers": [ { "url": "https" } ], "paths": { } }
swagger: "2.0" info: title: Title description: Title version: 1.0.0 host: www schemes: - https paths:
{ "swagger": "2.0", "info": { "title": "Title", "description": "Title", "version": "1.0.0" }, "host": "www", "schemes": [ "https" ], "paths": { } }

空の YAML または JSON ファイルから始める場合は、opnp または swag ライブテンプレートを入力し、Tab を押して対応するテンプレートテキストを挿入できます。

プロジェクトの OpenAPI 仕様で定義した URL は、コード補完で使用できます。外部仕様のクライアントコードを記述している場合、それをファイルとしてプロジェクトに追加して、URL の自動補完を行う必要はありません。関連するリモート仕様へのリンクを追加できます。

リモート OpenAPI 仕様を追加する

  1. 設定 / 環境設定ダイアログ Ctrl+Alt+S で、言語 & フレームワーク | OpenAPI 仕様を選択します。

  2. the Add button をクリックし、OpenAPI 仕様ファイルの URL を指定します。

The OpenAPI Specification settings

The Reload All Specifications button を使用して、変更された仕様を再ロードします。

OpenAPI 仕様を比較する

新しい仕様バージョンがある場合は、古いバージョンと比較して、互換性があることを確認する必要があります。1 つの方法は、差分 Ctrl+D を見て、変更された行を比較することです。ただし、すべての変更が互換性にとって重要であるとは限りません。PhpStorm は、OpenAPI 仕様の構造を比較し、変更されたパス、パラメーター、応答、および互換性を損なう可能性のあるその他の要素の概要を作成できます。

  • プロジェクトツールウィンドウで、2 つの OpenAPI 仕様ファイルを選択し、右クリックして OpenAPI 仕様の比較を選択します。

これにより、変更された仕様要素の要約を含む Markdown ファイルが生成されます。エディター内でファイルが開き、変更を簡単にナビゲートできるプレビューパネルが表示されます。最初に選択したファイルと比較して、2 番目に選択したファイルの変更が表示されます。

OpenAPI 仕様からコードを生成する

有効な OpenAPI 仕様を開いている場合は、the Generate Code buttonをクリックしてコードを生成できます。

Generate code based on the OpenAPI specification

the Generate Code button をクリックし、必要な設定を構成してから、変更を適用して構成を実行します。PhpStorm は、指定された場所にソースコードファイルを生成し、ファイルを開くか、別のモジュールとしてプロジェクトにインポートするかを選択できる通知を表示します。

Swagger Codegen 実行構成

PhpStorm は、Swagger Codegen 実行構成を作成します。これは、特定のファイルに対して初めてコード生成を実行するときに構成できます。実行構成を変更するには、実行 | 構成の編集を開いて必要な構成を選択するか、対応する OpenAPI 仕様ファイルが開いているときにエディターの上部にあるthe Edit Generation Settings buttonをクリックします。

Swagger Codegen 実行構成の上部で、次の共通オプションを構成できます。

項目

説明

名前

実行 / デバッグ構成の名前を指定して、たとえば実行ポップアップ Alt+Shift+F10 から構成を編集または実行するときにすばやく識別します。

並列実行を許可する

この実行構成の複数のインスタンスを並行して実行できるようにする場合に選択します。

デフォルトでは無効になっており、別のインスタンスの実行中にこの構成を開始すると、PhpStorm は実行中のインスタンスを停止して別のインスタンスを開始することを提案します。これは、実行 / デバッグ構成が多くのリソースを消費し、複数のインスタンスを実行する正当な理由がない場合に役立ちます。

プロジェクトファイルとして保管

実行構成設定を含むファイルを保存して、他のチームメンバーと共有します。デフォルトの場所は .idea/runConfigurations です。ただし、.idea ディレクトリを共有したくない場合は、プロジェクト内の他のディレクトリに構成を保存できます。

デフォルトでは無効になっており、PhpStorm は実行構成設定を .idea/workspace.xml に保存します。

一般設定

項目

説明

仕様パス OpenAPI 仕様へのパス。
ファイルを生成 生成されたファイルのディレクトリへのパス。
ジェネレータパス ジェネレーター(実行可能 JAR ファイル)へのパス。ローカルジェネレーターへのパスを手動で指定するか、Maven セントラルから入手可能な最新バージョンを使用することを選択できます。
言語 生成されたコードのターゲット言語。
ジェネレーターを構成する

ターゲット言語に依存する構成パラメーターを指定します。

  • .json ファイル : config.json へのパスを構成パラメーターで指定します。

    例:Java の config.json ファイルには、次のパラメーターを含めることができます。

    { "groupId":"com.my.company", "artifactId":"MyClient", "artifactVersion":"1.2.0", "library":"feign" }
  • プロパティ付き : パラメーターを手動で指定します。

構成パラメーターについては、swagger-codegen / README.md(英語) を参照してください。

拡張設定

項目

説明

カスタムテンプレートパス Mustache テンプレート(英語)のあるディレクトリへのパス。
JRESwagger Codegen の実行に使用する Java ランタイム。
デバッグログを表示 ログにデバッグメッセージを書き込みます。

起動前

指定した順序で実行構成を開始する前に実行するタスクを追加します。例:最初に別の構成または外部ツールを実行できます。

項目

説明

このページを表示する 開始する前に、この実行構成設定ダイアログを表示します。
ツールウィンドウをアクティブにする この構成が開始したら、実行ツールウィンドウを開きます。これが無効になっている場合、ツールウィンドウを開くには、表示 | ツールウィンドウ | 実行 Alt+4 を選択します。

HTTP クライアントで OpenAPI 仕様をテストする

OpenAPI 仕様ファイルを使用する場合、指定したエンドポイントへの HTTP リクエストを作成し、組み込みの HTTP クライアント(英語)を介して実行できます。

エンドポイントへの HTTP リクエストを作成する

  • OpenAPI 仕様ファイルで、エンドポイント定義の横にあるエディターのガターでthe Open in HTTP Client buttonをクリックします。

PhpStorm は新しい HTTP リクエストを作成し、generated-requests.http スクラッチファイルに保存します(英語)

Creating an HTTP request to an endpoint

エンドポイントとその使用箇所の名前を変更する

名前変更リファクタリングを使用して、定義されたエンドポイントの名前を変更し、HTTP リクエストでの使用を同時に変更します。

  1. 以下のいずれかを行います。

    • OpenAPI 仕様ファイルで、名前を変更するエンドポイントの定義にキャレットを置きます。

    • HTTP リクエストファイルで、名前を変更する URL パスセグメントにキャレットを置きます。

  2. メインメニューまたはコンテキストメニューからリファクタリング | 名前の変更を選択するか、Shift+F6 を押します。

  3. 開いた名前変更ダイアログで、新しいエンドポイントの名前を指定します。

  4. プレビューと変更の適用

PhpStorm は、エンドポイントとその使用箇所の名前を変更します。

Renaming an HTTP endpoint
最終更新日 :

関連ページ:

PhpStorm コードエディターの HTTP クライアント

Web サービスをテストする場合、PhpStormコードエディターで直接 HTTP リクエストを作成、編集、実行できます。HTTP リクエストは.httpおよび.restファイルに保存され、アイコンでマークされます。HTTP ファイルのサポートには、以下の機能が含まれます。コードのハイライト、ホスト...

ソースコードを書いて編集する

コードを使用する場合、PhpStorm は作業にストレスがないことを保証します。追加、選択、コピー、移動、編集、折りたたみ、出現箇所の検索、コードの保存に役立つさまざまなショートカットと機能を提供します。エディター内のナビゲーションについては、エディターの基本を参照してください。アクションの検索使用...

コード補完

このセクションでは、コーディングプロセスのスピードアップを可能にするコンテキスト対応コード補完のさまざまなテクニックについて説明します。基本補完 :基本コード補完は、可視性スコープ内のクラス、メソッド、およびキーワードの名前を完成させるのに役立ちます。コード補完を呼び出すと、PhpStorm はコン...

ファイル、フォルダー、テキストソースを比較する

PhpStorm を使用すると、任意の 2 つのファイル、フォルダー、テキストソース、またはデータベースオブジェクトの間、およびローカルファイルとそのリポジトリバージョン間の違いを確認できます。2 つのファイルの比較 :PhpStorm はファイルの差分ビューアーに差分を表示します:変更を適用する...

実行 / デバッグ構成を操作する

PhpStorm でコードを実行またはデバッグするには、実行 / デバッグ構成を使用できます。各実行 / デバッグ構成は、名前付きの実行 / デバッグ起動プロパティのセットを表します。PhpStorm を使用して実行、デバッグ、またはテストの操作を実行するときは、常にそのパラメーターを使用して、既存...

npm、pnpm、および Yarn

PhpStorm はnpm、Yarn、Yarn 2、およびpnpmと統合されているため、IDE 内から再利用可能なコードのパッケージをインストール、検索、更新、削除できます。Node.js と NPM ページは、パッケージを管理するための専用 UI を提供します。もちろん、組み込みのターミナルのコマ...