处理组合件中的错误

使用组合件的 catch 部分来描述组合件执行期间所抛出错误的处理。

关于此任务

注: 此任务与配置 OpenAPI 2.0 API 定义相关。 有关如何配置 OpenAPI 3.0 API 定义的详细信息,请参阅 编辑 OpenAPI 3.0 API 定义

您可以使用 API Designer UI 应用程序或使用基于浏览器的 API Manager UI 来完成此任务。

组合件的 catch 部分用于在组合件执行期间抛出错误的实例中实施组合件。 例如,组合件可能包含 throw 元素, API 调用者可能无法认证,或者策略可能无法正确执行。 可使用不同的 catch 处理每个错误,并且每个 catch 可处理多个状态错误。

过程

要创建 catch 并在其中添加元素,请完成以下步骤:

  1. 在导航窗格中,单击 导航窗格中的 "开发" 图标 开发,然后选择 API 选项卡
    此时将打开 " 开发 " 页面。
  2. 单击要应用 catch 的 API 定义的标题。
  3. 选择 网关 选项卡,然后单击导航窗格中的 策略
  4. 将画布的菜单栏中的 显示捕获 开关设置为 显示 位置。
  5. 单击画布中的 捕获 ,或者单击 捕获 图标 "捕获" 图标 (如果显示)。
    这将打开 API catch 的属性工作表。
  6. 要添加在抛出未捕获的错误时执行的缺省 catch ,请单击 添加缺省 catch
    注: 如果在另一个 catch 之前具有缺省 catch ,那么即使抛出另一个 catch 的错误,缺省 catch 也会激活。
  7. 要添加新 catch ,请单击 添加 catch
  8. 要指定 catch 应用于哪些错误,请使用 选择错误 字段并选择相应的错误。
  9. 可选: 要从 catch 中除去错误案例,请从 选择错误 下拉列表中清除相应的复选框。 要从 catch 中清除所有错误个案,请在 选择错误 字段中单击与错误个案总数对应的交叉。
  10. 可选: 要更改捕获的优先顺序,请使用 上移 "上移" 图标下移 "下移" 图标 图标。
    如果多个 catch 处理一个错误案例,那么将应用列表开头的 catch。
  11. 要从选用板向 catch 添加元素,请单击组合件流中相应位置的加号图标 圆圈内的加号 。 通过单击要应用于 catch 的元素来选择该元素。
  12. 单击保存以保存更改。

后续操作

如果您添加了 ConnectionError 、SOAPErrorOperationError 的捕获,则必须在程序集中为 Invoke 策略的“错误时停止”设置添加相同的错误。 否则,如果在执行 Invoke 策略期间发生错误,那么不会捕获该错误,将允许策略执行完成,并且组合件流将继续执行。 有关配置 Invoke 策略的详细信息,请参阅 调用

有关组合件可返回并可用于 catch 函数的所有错误的详细信息,请参阅 组合件 catch 支持的错误案例