【发布时间】:2023-03-12 07:36:01
【问题描述】:
您好,我已经阅读了很多 mule 4 文档,但没有找到答案。如何在 dataweave 转换器中设置 HTTP 状态?在 mule 3 中,它是在 set 属性组件中设置的。谢谢
【问题讨论】:
标签: http mule status dataweave
您好,我已经阅读了很多 mule 4 文档,但没有找到答案。如何在 dataweave 转换器中设置 HTTP 状态?在 mule 3 中,它是在 set 属性组件中设置的。谢谢
【问题讨论】:
标签: http mule status dataweave
您可以在侦听器的 http:response 中使用statusCode 属性来告诉它从哪里获取状态。以下示例将从名为 httpStatus 的 var 中获取它,如果在流执行后 var 不可用,则默认为 200:
<http:listener config-ref="api-httpListenerConfig" path="/api/v1/*">
<http:response statusCode="#[vars.httpStatus default 200]">
<http:headers>#[vars.outboundHeaders default {}]</http:headers>
</http:response>
<http:error-response statusCode="#[vars.httpStatus default 500]">
<http:body>#[payload]</http:body>
<http:headers>#[vars.outboundHeaders default {}]</http:headers>
</http:error-response>
</http:listener>
【讨论】:
定义一个像下面这样的变量,它应该可以工作。
<set-variable value="404" doc:name="httpStatus" variableName="httpStatus" />
【讨论】: