创建 API 代理

本页面适用于 ApigeeApigee Hybrid

查看 Apigee Edge 文档。

在 Apigee 界面中或使用 API 创建代理,如以下部分所述。

API 代理主要字段

创建 API 代理时,请遵循以下准则:

字段 说明
API 代理名称 为您的 API 显示的名称。指定字母数字字符、短划线 (-) 或下划线 (_)。
API 代理基本路径 显示在 API 代理的 http://[host]https://[host] 地址之后的 URI 片段。Apigee 使用基本路径 URI 来将传入的请求消息匹配并路由到适当的 API 代理。

在基本路径中使用通配符

在 API 代理基本路径中使用一个或多个通配符,以使您的 API 代理可适应未来的需求。 我们允许在两个 / 正斜杠字符之间指定单个 * 通配符:/*/。 例如,/team/*/members 的基本路径允许客户端调用 https://[host]/team/blue/membershttps://[host]/team/green/members,而无需创建新的 API 代理来支持新团队。您可以按照此模式替换基路径中的任意数量的令牌。 不支持其他模式,包括 /**/something*/*something

说明 (可选)API 代理的说明。
目标/后端目标网址 此 API 代理调用的后端服务的网址(包括 HTTP 或 HTTPS)。

创建 API 代理的步骤

如需使用界面或 API 创建 API 代理,请执行以下操作:

Cloud 控制台中的 Apigee

如需在 Cloud 控制台的 Apigee 中创建代理,请执行以下操作:

  1. 在浏览器中打开 Cloud 控制台中的 Apigee 界面
  2. 在左侧导航窗格中,点击代理开发 > API 代理
  3. API 代理窗格,点击 + 创建
  4. 创建代理窗格的代理模板下,请选择反向代理(最常见)
  5. 代理详情下,输入以下内容:
    • 代理名称:输入代理的名称,例如 myproxy
    • 基本路径:自动设置为您为 Proxy name 输入的值。基本路径是用于向 API 发出请求的网址的一部分。Apigee 使用网址来匹配传入的请求并将其路由到相应的 API 代理。
    • 说明(可选):为您的新 API 代理输入说明,例如“使用简单代理测试 Apigee”。
    • 目标(现有 API):输入 https://mocktarget.apigee.net。 此操作会定义 Apigee 在向 API 代理发送的请求上调用的目标网址。mocktarget 服务托管在 Apigee 上,并返回简单的数据。它不需要 API 密钥或访问令牌。
    • 点击下一步
  6. 部署(可选)
    • 部署环境:可选。使用复选框选择要部署代理的一个或多个环境。如果您不想在此时部署代理,请将部署环境字段留空。您可以稍后部署该代理。
    • 服务账号:可选。将服务账号附加到部署,使代理能够访问服务账号的角色和权限中指定的 Google Cloud 服务。
  7. 点击创建

Apigee 会创建新代理,并在代理摘要视图中显示代理详情摘要。

myproxy 摘要窗格。

如果您选择部署代理,则部署部分会显示修订版本号,即首次部署时为 1。状态列显示代理部署的环境,其中有绿色状态指示符。

经典版 Apigee

如需在经典版 Apigee 界面中创建简单的 API 代理,请执行以下操作:

  1. 登录 Apigee 界面
  2. 在主视图中点击 API 代理
  3. 环境下拉列表中选择要在其中创建新的 API 代理的环境。

    Hybrid 界面会显示该环境的 API 代理列表。如果您尚未创建任何代理,则列表为空。

  4. 点击新建

    此时将启动“创建代理”向导。

  5. 点击反向代理(最常见)

    反向代理

    系统即会显示代理详细信息页面。

  6. 使用以下设置配置代理:
    • 名称:输入 getstarted。 如果已存在使用此名称的代理,请选择其他名称。
    • 基本路径:将此选项保留为 /getstarted基本路径是用于向 API 发出请求的网址的一部分。Apigee 使用网址来匹配传入的请求并将其路由到相应的 API 代理。
    • 说明(可选):输入新 API 代理的说明,例如 Get started API proxy
    • 目标(现有 API):输入 https://mocktarget.apigee.net。 此操作会定义 Apigee 在向 API 代理发送的请求上调用的目标网址。mocktarget 服务托管在 Apigee 上,并返回简单的数据。它不需要 API 密钥或访问令牌。

    您的 API 代理的详细信息应如下所示:

    API 代理详细信息

  7. 点击下一步
  8. 通用政策视图中的安全性:授权下,选择通过(无授权)

    经过选择

  9. 点击下一步
  10. 摘要页面上,根据需要选择部署环境,然后点击创建和部署

    创建并部署

    新的 API 代理会在所选环境中创建和部署。

    “成功部署”屏幕

  11. 点击修改代理,以显示代理编辑器的“概览”标签页。
  12. 修改代理列表

在 API 代理列表中,test 环境的 getstarted API 代理部署状态为绿色

显示 API 代理列表。getstarted 部署状态为绿色。

Apigee API

通过向以下资源发出 POST 请求,在您的 Apigee 组织中创建 API 代理:

https://apigee.googleapis.com/v1/organizations/$ORG/apis

您必须使用 name 查询参数定义 API 代理的名称。将名称中使用的字符限制为以下字符:A-Za-z0-9._\-$ %

您也可以通过执行以下步骤导入 API 代理配置软件包:

  • action 查询参数设置为 import
  • Content-type 标头设置为 multipart/form-data
  • 传递本地文件系统上的 API 代理配置软件包的名称

以下示例展示了如何通过使用 API 导入本地文件系统上的 API 代理配置软件包 (helloworld-config.zip),来创建 API 代理。

curl "https://apigee.googleapis.com/v1/organizations/$ORG/apis?name=helloworld&action=import" \
  -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: multipart/form-data" \
  -F "file=@helloworld-config.zip"

按照获取 OAuth 2.0 访问令牌中的说明,将 $TOKEN 设置为您的 OAuth 2.0 访问令牌。如需了解此示例中使用的 curl 选项,请参阅使用 curl。如需了解所使用的环境变量,请参阅为 Apigee API 请求设置环境变量

以下提供了一个响应输出示例:

{
  "basepaths": [
    "/helloworld"
  ],
  "configurationVersion": {
    "majorVersion": 4
  },
  "createdAt": "1559145292799",
  "displayName": "helloworld",
  "entityMetaDataAsProperties": {
    "bundle_type": "zip",
    "subType": "Proxy",
    "lastModifiedAt": "1559145292799",
    "createdAt": "1559145292799"
  },
  "lastModifiedAt": "1559145292799",
  "name": "helloworld",
  "policies": [
    "verify-api-key",
    "remove-query-param-apikey",
    "OAuth-v20-1"
  ],
  "proxies": [
    "default"
  ],
  "proxyEndpoints": [
    "default"
  ],
  "resourceFiles": {},
  "targetEndpoints": [
    "default"
  ],
  "targets": [
    "default"
  ],
  "type": "Application",
  "revision": "1",
  "description": "Hello world"
}

如需详细了解如何创建 API 代理,请参阅 Apigee API 中的 apis.create 方法。如需查看 API 代理可用的所有方法,请参阅 API 代理 API

后续步骤

创建简单的 API 代理后,您通常要执行以下操作之一: