HTTPテストウィンドウ

XMLSpy内で、HTTPリクエストを直接送信および受信できます

  • HTTPプロトコル テスト
  • ファイルアップロードに使用されるmultipart/form-data形式のリクエスト
  • 受信したデータや応答を確認し、問題が発生した場合はその原因を特定して解決します
  • 複数のメッセージを同時にテストするための、9つのタブを持つウィンドウ
  • OpenAPIファイルからリクエストを生成します
  • レスポンスのヘッダーと本文を表示します
  • REST/SOAPウェブサービスのAPI応答のテスト
  • AI APIの応答テストと、プロンプトエンジニアリングの検証

HTTPプロトコル テスト

XMLSpyでのHTTPリクエスト/レスポンスのテスト方法

HTTPプロトコルは、インターネット上でファイル(テキスト、画像など)がどのように送受信されるかを定義しています。すべてのウェブサーバーには、HTTPリクエストを常に待ち受け、受信したリクエストを処理するデーモンが稼働しています。

HTTPプロトコルはステートレス(状態を持たない)であり、これは各HTTPコマンドが独立して実行され、過去または未来のコマンドとの関連性がないことを意味します。このため、テストやデバッグが困難になることがあります。

開発者の皆様を支援するため、XMLSpyのHTTPテストウィンドウでは、ウェブサーバーやAPIに対してHTTPリクエストを作成し送信するプロセスを段階的に案内します。その後、受信したレスポンスを確認し、問題が発生した場合はトラブルシューティングを行うことができます。

ウィンドウの左側のパネルには、リクエストの内容が定義されており、その内容は以下の要素で構成される場合があります

  • リクエストのHTTPメソッド(GET、PUT、POSTなど)と、対象となるURL
  • リクエストのHTTPヘッダー
  • 接続設定(例:タイムアウト設定、セキュリティオプション)
  • POSTメソッドとPUTメソッドの場合、HTTPメッセージの本文は以下のようになります

リクエストが定義されたら、「送信」ボタンを押して、ウェブサーバーに送信します。送信後、右側のペインでその応答をすぐに確認できます。このペインには、応答の内容とヘッダー情報が表示されます。

HTTPウィンドウには9つのタブが用意されており、これらを使って複数のメッセージを保存・テストし、必要に応じてそれらの間で切り替えることができます。

XMLSpyでは、HTTPリクエストをHTTPテスターに直接保存することも可能です。これは、同じ設定を再利用する場合や、ドキュメント作成の際に役立ちます。また、HTTPレスポンスをファイルに保存したり、新しいドキュメントにコピーして、さらに加工することもできます。例えば、レスポンスの構造に基づいて、JSONやXMLスキーマを自動的に生成することができます。

マルチパートリクエストとファイルアップロード機能

HTTPテストウィンドウでは、multipart/form-data形式のPOSTおよびPUTリクエストに対応しています。これは、Web APIがファイルアップロードや、テキストフィールド、JSON、バイナリファイルなど、複数の種類のデータを1つのメッセージにまとめて送信するリクエストを処理するための標準的な方法です。

エントリーヘルパーを使用することで、複数の要素を含むリクエストを簡単に作成できます。各要素について、名前を指定し、テキストデータかファイルデータかを選択し、コンテンツタイプを設定し、テキストを入力するか、アップロードするファイルを選択します。APIが許容する要素の数だけ追加できます。そのため、複数のファイルを一度にアップロードしたり、ファイルと一緒にそのJSONメタデータを送信したりするのは、数行の情報を入力するだけで実現可能です。

multipart/form-data形式のHTTP POSTリクエスト

OpenAPIメッセージのテスト

HTTPウィンドウは、以下の機能を提供できます OpenAPIドキュメントに基づいて、リクエストを作成し、テストを行う これは、APIに関する情報を記述したドキュメントです。OpenAPIドキュメントの場所を指定するだけで、HTTPウィンドウに利用可能なパスと、それに対応する操作が表示されます。選択した操作とパラメータに基づいて、XMLSpyがテストメッセージを自動生成し、それをAPIに送信し、結果を確認することができます。

OpenAPIに基づいて、テストメッセージを送信します

また、OpenAPIファイル自体から始めることも可能です。編集中に任意の操作項目を右クリックすると、XMLSpyがHTTPテストウィンドウを開き、パス、メソッド、パラメータ、リクエストボディが自動的に入力された、送信可能なリクエストが表示されます。

ある操作が multipart/form-data 形式のデータを受け取ることを期待する場合、XMLSpyはスキーマを読み込み、必要なデータ部分(その名前と型を含む)を事前に設定します。そのため、ユーザーは値を入力し、ファイルパスを指定するだけで、送信することができます。

AI APIのテストとプロンプトエンジニアリング

HTTPテストウィンドウは、主要なAI APIへのリクエストのテストだけでなく、プロンプトエンジニアリングのためのAIの結果の分析にも役立ちます。

AI APIのエンドポイントのURLを入力した後、コンテンツの種類を選択し、認証ヘッダーにAPIキーを入力します。必要に応じて、組織名を示すヘッダーを追加することもできます。その後、メッセージの内容を入力し、APIエンドポイントに送信します。

応答に基づいて、より良い結果を得るために、プロンプトを調整する必要があるかもしれません。例えば、JSONペイロードのプロンプト欄で使用する表現を調整したり、さまざまなパラメータを試して、出力結果を改善したりすることができます。

変更を加えた後、再度リクエストを送信し、新しい応答を確認することができます。このプロセスを繰り返すことで、AIの出力の品質と関連性を段階的に向上させることができます。

XMLSpyを使用して、AI APIの応答をテストし、プロンプトエンジニアリングを行う

HTTPテスターを使用することで、AI APIに対してHTTPリクエストを構成し送信することが容易になり、包括的なテストを実施し、自然言語のプロンプトを洗練することができます。 開発者は、リクエストの内容を正確に調整し、様々なパラメータを試したり、詳細な応答を瞬時に確認したりできるため、AIを活用したソリューションを構築する際に、プロンプトエンジニアリングを容易に改善することができます。

WADL/WSDLインポートウィザード

また、WADL(Web Application Description Language)ファイルからリクエストをインポートすることで、テストを開始することも可能です。WADLファイルは、HTTPベースのアプリケーションに関する機械可読な記述を提供します。あるいは、SOAPウェブサービスのエンドポイントを記述したWSDLドキュメントをインポートすることもできます。

XMLSpyのHTTPウィンドウには、WADL/WSDLインポートウィザードが搭載されており、これにより、ファイルの読み込み、テスト用のリクエストの選択、およびリクエストの編集可能なパラメータの変更といった一連の手順を簡単に行うことができます。

その後、そのリクエストがHTTPウィンドウにインポートされ、送信してレスポンスを確認することができます。

XMLSpyで、WADLまたはWSDLメッセージをテストします