OpenAPI プロキシの使用

GitBookはプロキシできます テストする リクエストをプロキシできるため、APIサーバーがCORSをサポートしていなくても動作します。

これが存在する理由

ブラウザーは、APIサーバーがCORSヘッダーで許可しない限り、クロスオリジンリクエストをブロックします。CORSが設定されていないと、 テストする ブラウザーではリクエストが失敗します。プロキシは、それらのリクエストをGitBookを経由してサーバー側でルーティングし、その制限を回避します。

スペック全体でプロキシを有効にする

追加する x-enable-proxy: true OpenAPIスペックのルートに。

openapi: '3.0.3'
x-enable-proxy: true
info:
  title: Example API
  version: '1.0.0'
servers:
  - url: https://api.example.com

特定の操作で有効または無効にする

追加する x-enable-proxy を操作に対して。

openapi: '3.0.3'
info:
  title: Example API
  version: '1.0.0'
servers:
  - url: https://api.example.com
paths:
  /reports:
    get:
      summary: レポート一覧を取得
      x-enable-proxy: true
      responses:
        '200':
          description: OK
    post:
      summary: レポートを作成
      x-enable-proxy: false
      responses:
        '201':
          description: 作成済み
circle-info

操作レベル x-enable-proxy はルートレベルの値より優先されます。

プロキシがサポートするもの

GitBookはすべての HTTP メソッド(GET, POST, PUT, DELETE, PATCH)、ヘッダー、Cookie、リクエストボディを転送します。

セキュリティ

プロキシは、スペックの servers 配列に記載されたURLにのみリクエストを転送します。任意のURLへ到達するためには使用できません。

circle-info

次の servers 配列に、テスト対象にしたいすべてのベースURLが含まれていることを確認してください。URLが記載されていない場合、 テストする そのホストへのリクエストはプロキシをバイパスします。

最終更新

役に立ちましたか?