第 1 章 操作 APIcast
本节介绍了使用高级 APIcast 配置时需要考虑的概念。
1.1. 公共基本 URL
Public Base URL 是开发人员用于向 API 产品发出请求的 URL,通过 3scale 公开。这将是您的 APIcast 实例的 URL。
如果您使用的是由管理的部署选项之一,您可以在要管理的域名中为每个环境选择您自己的公共基本 URL。这个 URL 应与其中一个 API 后端不同,并可能类似 https://api.yourdomain.com:443
,其中 您的domain.com
是您所属的域。设置公共基本 URL 后,请确保保存更改,如有必要,将暂存中的更改提升到生产环境。
您指定的公共基本 URL 必须使用 OpenShift 集群中可用的端口。默认情况下,OpenShift 路由器仅侦听标准 HTTP 和 HTTPS 端口(80 和 443)上的连接。如果您希望用户通过某些其他端口连接到您的 API,请与您的 OpenShift 管理员合作以启用该端口。
APIcast 将仅接受对公共基本 URL 中指定的主机名的调用。例如,如果您将
https://echo-api.3scale.net:443
指定为公共基本 URL,则正确的调用是:
curl "https://echo-api.3scale.net:443/hello?user_key=YOUR_USER_KEY"
如果您的 API 没有公共域,您可以在请求中使用 APIcast IP 地址,但您仍需要在公共基础 URL 字段中指定一个值,即使该域不是真实的。在这种情况下,请确保在 Host 标头中提供主机。例如:
curl "http://192.0.2.12:80/hello?user_key=YOUR_USER_KEY" -H "Host: echo-api.3scale.net"
如果您在本地机器上部署,您也可以只使用"localhost"作为域,因此公共基本 URL 类似如下,然后您可以按照以下方式发出请求:http://localhost:80
curl "http://localhost:80/hello?user_key=YOUR_USER_KEY"
如果您有多个 API 产品,请为每个产品正确设置此公共基本 URL。APIcast 将基于主机名路由请求。