第 3 步:使用 ExtensionCallout 政策

您正在查看的是 Apigee Edge 文档。
转到 Apigee X 文档
信息

开发 API 代理时,您可以通过向代理添加 ExtensionCallout 政策来添加对扩展程序的支持。(如果您在创建简单代理方面需要帮助,请参阅构建您的第一个代理)。

如果您添加对扩展程序的支持,则将 ExtensionCallout 政策与配置的扩展程序相关联。该扩展程序配置的设置定义了扩展程序如何与其连接到的后端资源进行交互。ExtensionCallout 政策集成到 API 代理中,就是这个专门配置的扩展程序。

如需向 API 代理添加扩展程序,请执行以下操作

  1. 在 Apigee Edge 控制台的开发视图中,打开您的 API 代理。

    虽然您必须是组织管理员才能创建扩展程序,但任何用户角色都可以将扩展程序添加到 API 代理中。

  2. 导航器窗格中,选择 PreFlow

  3. 点击右上角的 + 步骤按钮以添加政策。

  4. 添加步骤对话框左侧的政策列表中,点击扩展程序宣传信息

    如果您在列表中没有看到 ExtensionCallout 政策,请确保您使用的是新版 Edge 界面。此外,Apigee Extensions 目前仅供 Apigee Edge Cloud Enterprise 客户使用。

  5. 在右侧窗格中,选择用于配置政策的选项:
    字段 说明
    Display Name 输入政策的显示名称。
    名称 以编程方式输入该政策的名称。此名称在代理中必须是唯一的。
    扩展程序 选择要使用的扩展程序。这是您之前配置的扩展程序。
    操作 选择“记录”操作。
  6. 点击添加
  7. 在流视图中,点击政策可查看其配置 XML。

    添加扩展程序后,您会获得政策 XML 示例。请注意,它包含描述如何构建 <Input> 元素的配置的架构。(您可以忽略 <Output> 元素架构 - 扩展程序“log”操作没有返回响应正文。)

  8. 修改政策 XML,使其如下所示:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ConnectorCallout async="false" continueOnError="true" enabled="true" name="Extension-Callout-Beta-1">
      <DisplayName>Logging Extension</DisplayName>
      <Connector>my-logging-extension</Connector>
      <Action>log</Action>
      <Input>{
        "logName": "example-log",
        "metadata": {
          "resource": {
            "type": "global",
            "labels": {
              "project_id": "my-gcp-project"
            }
          }
        },
        "message": "This is a test"
      }</Input>
    </ConnectorCallout><!--
    Input JSON Schema for package=gcp-stackdriver-logging version=0.0.4
    {"type":"object","properties":{"logName":{"type":"string"},"metadata":{"type":"string"},"message":{"type":"string"}},"required":["logName","message"]}
    -->
    <!--
    Output JSON Schema for package=gcp-stackdriver-logging version=0.0.4
    {"type":"object","properties":{"content":{"type":"string"}},"required":[]}
    -->

    此处,<Input> 定义了以下内容:

    • logName 是要写入的日志的名称。如果不存在,扩展程序将创建。
    • metadata 指定您可以用于在 Stackdriver 控制台中浏览日志的信息。
    • message 只是您要写入的日志消息。
  9. 点击保存按钮。

后续步骤

第 1 步 第 2 步 第 3 步 第 4 步:部署代理 第 5 步