Menu Close

1.3. APIcast 如何处理具有自定义要求的 API

有些特殊情形需要自定义 APIcast 配置,以便 API 用户能够成功调用 API。

主机标头

除非 Host 标头与预期匹配,否则仅将这些 API 产品需要此选项。在这些情况下,在 API 产品前面有一个网关会导致问题,因为 Host 是网关之一,例如:xxxx-yyy.staging.apicast.io

要避免这个问题,您可以在 Authentication Settings:[Your_product_name] > Integration > SettingsHost Header 字段中定义 API 产品所需的主机

其结果是托管 APIcast 实例会在请求调用中重写主机规格。

主机重写

保护 API 后端

在 APIcast 在生产环境中工作后,您可能希望将直接访问 API 产品限制为仅那些指定您指定的 secret 令牌的调用。为此,请设置 APIcast Secret Token。如需有关如何设置它的信息,请参阅 高级 APIcast 配置

将 APIcast 与私有 API 搭配使用

借助 APIcast,可以保护互联网上不能公开访问的 API。必须满足的要求有:

  • 自我管理的 APIcast 必须用作部署选项。
  • APIcast 需要能够从公共互联网访问,并且能够向 3scale 服务管理 API 发出出站调用。
  • API 产品应该可由 APIcast 访问。

    在这种情况下,您可以在 Private Base URL 字段中设置您的内部域名或 API 的 IP 地址,并照常执行其余步骤。但是,执行此操作意味着您无法利用暂存环境。测试调用将无法成功,因为暂存 APIcast 实例由 3scale 托管,无法访问您的私有 API 后端。在生产环境中部署 APIcast 后,如果配置正确,APIcast 可以按预期工作。