JetBrains Rider 2024.1 ヘルプ

言語およびフレームワーク: OpenAPI

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

JetBrains Rider は、YAML および JSON ファイル内の OpenAPI 定義のコーディング支援を提供し、サーバースタブ、クライアントライブラリ(SDK)、OpenAPI 仕様に基づくドキュメントを生成するための Swagger Codegen(英語) との統合を提供します。

エンドポイントツールウィンドウを使用して、OpenAPI 仕様で定義されているすべてのエンドポイントを表示できます。

Endpoints from an OpenAPI specification

さらに、定義されたエンドポイントへの HTTP リクエストを OpenAPI 仕様から直接作成し、組み込みの HTTP クライアントを介して実行できます。

OpenAPI 仕様を作成する

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

OpenAPI 仕様を手動で作成する

  1. プロジェクトツールウィンドウで Alt+Insert を押し、コンテキストメニューから OpenAPI 仕様を選択します。

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

    New OpenAPI specification

エディターで開いた OpenAPI 仕様では、Add icon ガターアイコンを使用して仕様セクションをすばやく追加します。

OpenAPI gutter icons

IDE 設定の言語 & フレームワーク | OpenAPI 仕様素早い仕様編集のためのガターアイコンチェックボックスを使用して、Add icon ガターアイコンを無効にすることができます。

新しい 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 3.0 では、$ref(英語) キーワードを使用して、任意の場所でホストされている定義を参照できます。JetBrains Rider は、パスの補完、検証、迅速なナビゲーションを提供します。完了するために、JetBrains Rider は現在のファイルと外部ファイルのコンテキストを理解し、関連する要素へのポインターの使用を提案します。

  1. $ref キーワードを入力します。

  2. 外部定義へのパスの入力を開始します。

Ctrl+B を押すと、参照するファイルと要素にすばやく移動できます。

OpenAPI use ref

OpenAPI 仕様をプレビューする

統合された Swagger UI または Redoc UI を使用して、OpenAPI 仕様をプレビューできます。OpenAPI 仕様ファイルがエディターで開かれている場合、右上隅の the Open Editor Preview button および the Editor only button を使用してプレビューを表示または非表示にします。

Swagger UI と Redoc UI を切り替えるには、プレビュー領域にカーソルを置き、Switch View をクリックします。

Swagger Preview
Swagger Preview

エディターを分割して水平方向にプレビュー

デフォルトでは、エディターとプレビューは垂直方向 (横に並べて) に分割されているため、ワイドモニターに便利です。水平方向に分割して、エディターの下部にプレビューが表示されるようにすることもできます。これは、縦方向に表示する場合に便利です。

  1. エディターの右上隅にある the Open Editor Preview button をクリックして、エディタープレビューペインを開きます。

  2. the Open Editor Preview button をクリックして、エディターとプレビューを水平に分割します。

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

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

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

  2. リモート仕様リストで the Add button をクリックして、OpenAPI 仕様ファイルの URL を指定するか、SwaggerHub(英語) で OpenAPI 仕様を見つけます。

The OpenAPI Specification settings

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

プライベート OpenAPI 仕様(英語)を追加するには、API キーを指定します。

自己ホスト型 SwaggerHub オンプレミス(英語)インスタンスから OpenAPI 仕様を追加するには、インスタンスの URL を指定します。

OpenAPI 仕様の比較

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

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

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

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

有効な OpenAPI 仕様を開いている場合、JetBrains Rider はそれからコードを生成することを提案します。

Generate code based on the OpenAPI specification

ガターで the Run button をクリックし、実行 'openapi file' を選択します。JetBrains Rider は、指定された場所にソースコードファイルを生成し、ファイルを開くオプション、別のモジュールとしてプロジェクトにインポートするオプションを含む通知を表示します。

Swagger Codegen 実行構成

JetBrains Rider は、特定のファイルに対して初めてコード生成を実行するときに、OpenAPI/Swagger コードジェネレーター 実行構成を作成します。実行構成を変更するには、実行 | 実行構成の編集を開いて必要な構成を選択するか、ガターで the Run button をクリックして実行構成の変更を選択します。

OpenAPI/Swagger コードジェネレーター実行構成の上部で、次の共通オプションを構成できます。

名前

実行構成の名前を指定して、編集または実行時に他の構成の間ですばやく識別できるようにします。

複数のインスタンスを許可する

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

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

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

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

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

一般設定

一部の設定が非表示になっている場合は、オプションを変更をクリックして表示します。

項目

説明

仕様書パス

OpenAPI 仕様へのパス。

出力ディレクトリ

生成されたファイルのディレクトリへのパス。

コードジェネレーター

コードジェネレーターのタイプを選択します。

言語

生成されたコードのターゲット言語。

JRE

Swagger Codegen の実行に使用する Java ランタイム

カスタムテンプレートパス

Mustache テンプレート(英語)のあるディレクトリへのパス。

生成パラメーター

ターゲット言語に応じて構成パラメーターを指定します。詳細については、swagger-codegen/README.md(英語) を参照してください。

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

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

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

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

  • または、表示 | ツールウィンドウ | エンドポイントを開き、エンドポイントを右クリックして、HTTP クライアントでリクエストを生成を選択します。

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

リクエストをエンドポイントにすぐに送信し、保存したくない場合は、エンドポイントツールウィンドウの HTTP クライアントタブを使用できます。

JetBrains Rider は、利用可能な OpenAPI 仕様に基づいて、リクエスト URL とリクエスト本文 (JSON 形式) の補完を提供します。これはローカルだけでなく、リモート仕様にも適用されます (補完を有効にするには、IDE 設定に追加します )。

Body completion

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

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

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

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

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

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

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

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

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

関連ページ:

エンドポイントツールウィンドウ

エンドポイントツールウィンドウは、HTTP および WebSocket プロトコルのプロジェクトで使用されるクライアント API とサーバー API の両方の集約ビューを提供します。ツールウィンドウは、マイクロサービスやバックエンドとフロントエンドの通信を開発する際に役立ちます。また、サードパーティの API を調べるのにも役立ちます。エンドポイントツールウィンドウからエンドポイント宣言に移動するには、次のいずれかを実行します。エンドポイントのコンテキストメニューからソースに移動を選択します。エ...

HTTP クライアント

HTTP クライアントプラグインを使用すると、JetBrains Rider コードエディターで HTTP リクエストを直接作成、編集、実行できます。HTTP リクエストを作成して実行する必要がある場合、主に 2 つのユースケースがあります。RESTful Web サービスを開発していて、それが期待どおりに機能し、仕様に準拠してアクセス可能であり、正しく応答することを確認したい場合。RESTful Web サービスに対応するアプリケーションを開発している場合。この場合、開発を開始する前にサービス...

Web 固有のライブテンプレート

ライブテンプレートを使用して、ループ、条件、宣言、print ステートメントなどの一般的な構造をコードに挿入します。コードスニペットを展開するには、対応するテンプレートの省略形を入力してを押します。を押し続けると、テンプレート内の 1 つの変数から次の変数に移動します。を押して、前の変数に移動します。ライブテンプレートの種類:次のタイプのライブテンプレートが区別されます。シンプルなテンプレートには固定プレーンテキストのみが含まれています。シンプルなテンプレートを展開すると、テキストが自動

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

JetBrains Rider を使用すると、ファイル、フォルダー、テキストソース、データベースオブジェクト間の違い、ローカルファイルとそれらのリポジトリバージョン間の違いを確認できます。ファイルを比較:JetBrains Rider はファイルの差分ビューアーに差分を表示します: グリーン追加済みブルー変更グレー削除変更を適用するには、シェブロンボタン (および) を使用します。変更を追加するには、を押します。

実行 / デバッグ構成

JetBrains Rider は、実行 / デバッグ構成を使用して、コードを実行、デバッグ、デプロイ、テストします。各構成は、何を実行し、どのパラメーターと環境を使用するかを定義する、名前付きのスタートアッププロパティのセットです。実行 / デバッグ構成には 2 つのタイプがあります。一時的 — エディターから .NET 静的メソッドを実行 / デバッグするたびに作成されます。永続的 — テンプレートから明示的に作成されるか、一時的な構成を保存することによって作成されます。永続的な構成は、削除するま...

言語およびフレームワーク: Markdown

Markdown は、フォーマット要素をプレーンテキストに追加するための軽量のマークアップ言語です。JetBrains Rider は Markdown ファイルを認識し、ハイライト、補完、フォーマットを行う専用エディターを提供し、レンダリングされた HTML をライブプレビューペインに表示します。サポートは CommonMark の仕様に基づいています。新しい Markdown ファイルを作成するデフォルトでは、JetBrains Rider は、.md または .markdown 拡張子を持つすべての...