使用 OpenAPI 代理

GitBook 可以代理 测试它 请求,因此即使您的 API 服务器不支持 CORS 也能工作。

为什么会有这个功能

除非 API 服务器通过 CORS 头部选择加入,否则浏览器会阻止跨域请求。如果未配置 CORS, 测试它 请求将在浏览器中失败。代理会将这些请求在服务端通过 GitBook 路由,从而绕过该限制。

为整个规范启用代理

添加 x-enable-proxy: true 在您的 OpenAPI 规范的根部。

openapi: '3.0.3'
x-enable-proxy: true
信息:
  title: 示例 API
  version: '1.0.0'
服务器:
  - url: https://api.example.com

为特定操作启用或禁用

添加 x-enable-proxy 在某个操作上。

openapi: '3.0.3'
信息:
  title: 示例 API
  version: '1.0.0'
服务器:
  - url: https://api.example.com
路径:
  /reports:
    get:
      摘要:列出报告
      x-enable-proxy: true
      响应:
        '200':
          描述:成功
    post:
      摘要:创建报告
      x-enable-proxy: false
      响应:
        '201':
          描述:已创建
circle-info

操作级别的 x-enable-proxy 优先于根级别的值。

代理支持的内容

GitBook 转发所有 HTTP 方法(GET, POST, PUT, DELETE, PATCH)、头部、Cookie 和请求主体。

安全性

代理仅将请求转发到规范中列出的 URL 的 servers 数组。它不能用于访问任意 URL。

circle-info

确保您的 servers 数组包含您想要测试的每个基础 URL。如果某个 URL 未被列出, 测试它 到该主机的请求将绕过代理。

最后更新于

这有帮助吗?