WebSocketは、単一のTCP接続上で全二重通信を実現するAPI技術だ。従来のHTTPリクエストと比べて、遅延が少なく効率が高い。オンラインゲーム、リアルタイムチャットなど、永続的な接続やリアルタイムのデータ転送が必要なシーンに適している。WebSocket APIの管理はApidog バージョン2.2.34以降でサポートされている。
WebSocket APIの作成#
HTTPプロジェクト内にWebSocket APIを作成できる。1.
左側の「+」ボタンをクリックし、「新規WebSocket」を選択
2.
ws
または wss
で始まるWebSocketサーバーのURLを入力
4.
WebSocket APIを切断するには、「切断」をクリック
WebSocket APIの機能を最大限に活用するには、Apidogクライアントの使用を推奨する。
メッセージの送信#
WebSocket接続を確立後、メッセージ
タブでメッセージを作成できる。Text
、JSON
、XML
、HTML
などのテキスト形式でメッセージを直接作成できるほか、Base64
や 16進数
を使用してバイナリ形式でメッセージを作成することもできる。エディタは選択したメッセージ形式に基づいて、メッセージ内容の構文強調を適用する。メッセージが JSON
、XML
、HTML
形式の場合、入力内容のフォーマットも可能だ。メッセージの表示#
下部のメッセージ
セクションには、接続状態、送信メッセージ、受信メッセージが時系列で表示される。個々のメッセージをクリックすると、右側に詳細が表示される:テキスト形式のメッセージは、デフォルトでフォーマットされたメッセージが表示される。メッセージ形式とエンコーディングを手動で切り替えることができる
バイナリ形式のメッセージは、デフォルトでメッセージの Hexdump
が表示される。Base64
でエンコードされたメッセージと元のメッセージも表示できる
Handshakeリクエストパラメータの追加#
認証やその他の複雑なシナリオに対応するため、WebSocketハンドシェイク時に必要な パラメータ
、ヘッダー
、Cookie
などのパラメータをカスタマイズできる。Handshakeリクエストパラメータは、接続確立後は変更できない。接続前または切断後に設定する必要がある。
変数の使用#
WebSocket接続のハンドシェイクやメッセージでApidogの変数を使用できる。詳しくは変数の使用を参照。APIドキュメント#
WebSocket APIのステータス
、担当者
、タグ
を設定し、Markdown
形式で詳細なAPI説明を提供できる。また、WebSocket APIドキュメントを外部チームと共有でき、ブラウザで直接閲覧できる。APIの保存#
デバッグが完了したら、『保存」ボタンをクリックしてWebSocket APIを HTTP
プロジェクトのディレクトリツリーに保存する。これにより、他のチームメンバーがAPIのデバッグやドキュメントの閲覧ができる。FAQ#
Q: レスポンスのバリデーションが不要なのはなぜ?A: WebSocketリクエストでは、接続確立時にHTTPステータスコードが 101
である必要があり、これはプロトコルのアップグレードが成功したことを示す。そのため、通常ステータスコードの検証は不要 だ。Q: Authタブがないが、WebSocket APIの認証はどうする?A: 現在、WebSocket API認証には2つの方法を推奨している:1.
接続確立時に パラメータ
、ヘッダー
、Cookie
フィールドで認証情報を渡す
Q: ApidogはWebSocket APIでプリリクエスト/テストスクリプトとアサーションをサポートしている?A: まだサポートしていないが、現在設計・開発中だ。Q: リクエストとレスポンスの例はサポートされている?A: 現在はサポートしていないが、将来のバージョンでの実装を検討中だ。Q: WebSocket APIでモックがサポートされていないのはなぜ?A: 現在のモックライブラリはWebSocket APIの定義をサポートしていないため、定義に基づいてメッセージボディを生成できない。