返回响应

适用于:所有 API 管理层级

return-response 策略会取消管道执行,为调用方返回默认响应或自定义响应。 默认响应为200 OK,无正文。 可以通过上下文变量或策略语句指定自定义响应。 二者都提供时,会通过策略语句对上下文变量中包含的响应进行修改,然后再将其返回给调用方。

注意

按照策略声明中提供的顺序设置策略的元素和子元素。 详细了解如何设置或编辑 API 管理策略

策略语句

<return-response response-variable-name="existing context variable">
  <set-status>...</set-status>
  <set-header>...</set-header>
  <set-body>...</set-body>
</return-response>

属性

属性 说明 需要 默认
response-variable-name 上下文变量的名称,该变量引用自特定的策略(例如上游 send-request 策略)且包含 Response 对象。 不允许使用策略表达式。 空值

元素

元素 说明 必需
set-status 设置响应的状态代码。
set-header 设置响应中的标头。
set-body 设置响应中的正文。

使用情况

使用注意事项

  • return-response 策略的(使用 set-body 设置的)正文内指定时,Liquid 模板不起作用。 策略 return-response 取消当前执行管道,并删除当前上下文中的请求正文和响应正文。 因此,在策略中指定的 Liquid 模板会接收一个空字符串作为其输入,而不会生成预期的输出。

示例

<return-response>
   <set-status code="401" reason="Unauthorized"/>
   <set-header name="WWW-Authenticate" exists-action="override">
      <value>Bearer error="invalid_token"</value>
   </set-header>
</return-response>

后续步骤

有关使用策略的详细信息,请参阅: