现在,您已经配置了 Google Cloud 和 Hybrid 界面,并且安装和配置了运行时,接下来您可以了解它们如何协同工作。
1. 使用 Apigee 界面创建新的 API 代理
本部分介绍了如何使用 API 代理向导在该界面中创建新的 API 代理。
Cloud 控制台中的 Apigee
如需在 Cloud 控制台中使用 Apigee 创建新的 API 代理,请执行以下操作:
- 在浏览器中打开 Cloud 控制台中的 Apigee 界面。
- 从左上角的下拉菜单中选择您的组织。
- 在主视图中选择代理开发 > API 代理。
- 点击创建。API 代理向导随即启动。
- 选择反向代理(最常见)。
系统将显示代理详细信息视图。
- 使用以下设置配置代理:
- 代理名称:输入 myproxy。本部分的其余步骤假定这是代理的 ID。
- 基本路径:自动设置为 /,后跟代理名称,在此示例中为 /。基本路径是用于向 API 发出请求的网址的一部分。Edge 使用网址来匹配传入的请求并将其路由到相应的 API 代理。
- (可选)说明:为新的 API 代理输入说明,例如“使用简单代理测试 Apigee Hybrid”。
- 目标(现有 API):输入“https://mocktarget.apigee.net”。这会定义 Apigee 在向 API 代理发送请求时调用的目标网址。mocktarget 服务托管在 Apigee 上,并返回简单的数据。它不需要 API 密钥或访问令牌。
您的 API 代理的详细信息应如下所示:
- 点击下一步。
- 您可以在 Deploy (optional)(部署[可选])下的 Deployment environments(部署环境)字段中选择要在其中部署代理的一个或多个环境。 如果您不想在此时部署代理,请将 Deployment environments(部署环境)字段留空。您以后可以随时部署代理。
- 点击创建。 Apigee 会生成代理(有时称为代理软件包)。
Apigee 会显示 Proxy summary(代理摘要)视图。 如果您选择部署代理,则部署部分会显示修订版本号,首次部署时为 1。状态列显示在其中部署代理的环境,带有绿色状态指示符。
下方的修订版本部分显示对此代理进行的所有修订。点击 Endpoint summary 列中的一个查看项后,端点部分会显示:
- 代理端点:您为代理设置的基本路径,在此示例中为
/myproxy
。 - 目标端点:您为目标设置的基本路径,在此示例中为
https://mocktarget.apigee.net
。
经典版 Apigee
如需使用经典版 Apigee 创建新的 API 代理,请执行以下操作:
- 在浏览器中打开 Apigee 界面。
- 从左上角的下拉菜单中选择您的组织。
- 在主视图中依次选择开发 > API 代理。
- 点击新建。API 代理向导随即启动。
- 选择反向代理(最常见)。
系统将显示代理详细信息视图。
- 使用以下设置配置代理:
- 代理名称:输入“myproxy”。本部分的其余步骤假定这是代理的 ID。
- 代理基本路径:自动设置为“/myproxy”。代理基本路径是用于向 API 发出请求的网址的一部分。Edge 使用网址来匹配传入的请求并将其路由到相应的 API 代理。
- (可选)说明:为您的新 API 代理输入说明,例如“使用简单代理测试 Apigee Hybrid”。
- 目标(现有 API):输入“https://mocktarget.apigee.net”。此操作会定义 Apigee 在向 API 代理发送的请求上调用的目标网址。mocktarget 服务托管在 Apigee 上,并返回简单的数据。它不需要 API 密钥或访问令牌。
您的 API 代理的详细信息应如下所示:
- 点击下一步。
- 在通用政策屏幕上,选择直通(无授权) (Pass through (no authorization)) 作为安全选项。
- 点击下一步。
- 在摘要屏幕上,选择要将代理部署到的环境,然后点击创建并部署。
Hybrid 会生成代理(有时称为代理软件包),并将其部署到您选择的环境。
- 点击 Go to proxy list。
Apigee 会显示代理视图,其中显示 API 代理列表。新代理应显示有绿色状态指示图标,表示该代理已部署。
2. 调用 API 代理
当界面指示代理已部署时,您可以尝试使用 cURL 或您选择的 REST 客户端调用该代理。例如:
- 确保将
DOMAIN
环境变量设置为项目和组织设置 - 第 3 步:创建环境组中环境组的主机名所使用的域名。echo $DOMAIN
-
使用以下命令找到 Apigee 入站流量网关的外部 IP 地址和端口:
kubectl get svc -n apigee -l app=apigee-ingressgateway
输出应如下所示:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE apigee-ingressgateway-prod-hybrid-37a39bd LoadBalancer 192.0.2.123 233.252.0.123 15021:32049/TCP,80:31624/TCP,443:30723/TCP 16h
- 将外部 IP 和端口导出到变量:
export INGRESS_IP_ADDRESS=EXTERNAL_IP_ADDRESS
export INGRESS_PORT=PORT_NUMBER
- 调用 API 代理:
curl -H Host:$DOMAIN --resolve \ $DOMAIN:$INGRESS_PORT:$INGRESS_IP_ADDRESS \ https://$DOMAIN:$INGRESS_PORT/myproxy -k
例如:
curl -H Host:example.com --resolve example.com:443:233.252.0.123 https://example.com:443/myproxy -k
如需详细了解如何构建和部署 API 代理,请参阅构建第一个代理概览。