クラッシュコース101
10 モジュール
5 週

スワッガー

クリックでコピー

アプリケーションのトラブルシューティングにSwaggerを使用する


アプリケーションのテストとデバッグに使用できる次のツールは Swagger.このツールでは、開発中のアプリケーションのすべてのエンドポイントを確認し、それらを実行し、結果を得ることができます。これをもう少し詳しく見てみましょう。

での認証Swagger

まず第一に、デフォルトで Middleware Token Authはデフォルトで有効になっており、ほとんどのエンドポイントへのアクセスを制御します。これは、認証されていないユーザー、あるいは認証されていても適切なアクセス権を持っていないユーザーのアクセスを拒否します (たとえば、そのユーザーがUsers グループに属しており、そのエンドポイントはAdmins 専用に作られている場合など)。

必要な認証トークンは、Developer Tools 。必要なのは、公開されたWebアプリケーションにログインして、任意のリクエストを実行することだけです。このトークンは Request Headers.例えば、少し上のスクリーンショットで、国に関するデータを取得するために GETを実行したときのスクリーンショットです。

で直接取得する方法を見てみましょう。 Swagger.これを行うには、認可を担当するエンドポイントを見つけます (Authグループ)を見つけ POST /Auth/エンドポイント) を見つけ、 "Try it out" ボタンをクリックします。このエンドポイントは2つのパラメータ、Login 、およびPassword をとります。それらを指定し Executeをクリックしてリクエストを送信します。ちなみに、ここで、Developer Tools;を開いて、リクエストとレスポンスについてより詳しく調べることも有効です。


レスポンスには、必要なトークンと、ユーザーとそのセッションに関する詳細な情報が含まれます。


受け取ったレスポンスは、すでにDeveloper Tools で見たものと大差ないことがわかるだろう。 同時に。 Swaggerは、便利な形式で必要なパラメータを持つエンドポイントを起動し、任意のリクエストをテストすることができるという点で、否定できない利点を持っています。しかし、そのようなテストを進める前に、次のようにクリックしてみましょう。 Authorizeをクリックし、受け取ったトークンを使って認証を確認しましょう。


を使ったリクエストの送信Swagger

では、次のようにリクエストを送信してみましょう。 Swaggerを通して、人口が500万人以上で、説明に "World" という単語がある、最初に出てきた都市のデータを取得するリクエストを送信してみましょう。これを行うには GET /city/エンドポイントを開き、必要なパラメータを入力します。

  • _limit = 1(1つの都市のみ必要)
  • population_from = 5000000(人口の値をチェックする必要があります)
  • _search_in = infoinfo フィールドのみを検索)
  • _search = World(World という単語を検索する)


受信した応答は、リクエストが正しく実行されたことを示しています。そのような都市の情報を受け取りました(次のように表示されます。 count = 3つまり、データベースには 3 つの適切な都市の情報が含まれています)、その都市が位置する国に関するデータは受信していません (“country”: null) のデータを受け取りませんでした。これは、このクエリが関連するテーブルのデータを表示する必要がなかったからです (必要なら _withパラメータを使用する価値があります)。


Was this article helpful?
まだ答えをお探しですか?