如何在WSO2 Filter中介器中编写200及非200响应码的表达式
关于XML请求响应码分支逻辑的问题解答
是否需要定义属性组?
不是必须的,但如果你的业务逻辑里多处需要复用响应码判断规则,定义属性组能提升代码的可维护性和复用性。如果只是单一场景下的判断,直接写表达式完全够用。
响应码表达式编写示例
1. 不使用属性组的场景
直接在分支判断中写表达式:
- 200响应码分支判断:
response.status.code == 200 - 非200响应码的else分支无需额外写表达式,将其设为默认分支即可;若需显式判断,表达式为:
response.status.code != 200
2. 使用属性组的场景
先定义属性组(以常见的集成工具语法为例):
<property-group name="ResponseValidation"> <property name="isSuccessResponse" expression="response.status.code == 200"/> <property name="isFailureResponse" expression="response.status.code != 200"/> </property-group>
后续在逻辑分支中直接引用属性组的变量:
- 200分支判断:
${ResponseValidation.isSuccessResponse} - 非200分支判断:
${ResponseValidation.isFailureResponse}
工具适配说明
不同工具的表达式语法略有差异,但核心逻辑一致:
- Postman环境:
pm.response.code === 200 - SoapUI环境:
context.response.status == 200
内容的提问来源于stack exchange,提问作者Srikanth Bhima
相关产品推荐
相关产品推荐

