OpenAPI proxy の使用

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

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

最終更新

役に立ちましたか?