更新时间:2026-02-27 GMT+08:00
中止响应协议
中止响应协议语法遵循以下原则:
- 需要按照Json列表格式填写,列表里每一项均为对象。
- 对象允许为空,即{}。为空时将复制拦截的响应数据,其键值语法与响应索引语法一致。若出现非法值,则该对象的配置内容将会跳过。
- 单条中止响应协议list最大支持5个对象,每个对象内支持配置10条索引,超出的数据将忽略。同个对象中的索引不允许重复,重复后可能会造成结果不准确。
- 如果每个响应内容不变,可以直接配置常量,例如示例二:响应合规检测的场景二:“防护动作”设置为“中止响应”示例里的$.data.choices。
- 如果每个响应的内容不一样,但可以从带有“卡”的响应中获取的场景,可参考示例二:响应合规检测的场景二:“防护动作”设置为“中止响应”示例$.data.model配置,对象值遵循响应索引语法。
- 索引内的操作若有顺序,后面的操作会将前面的覆盖。例如,先对$.data.model赋值,后对整个$.data赋值,则对$.data.model的赋值会不生效。
- 如果对象是数组类型,对其进行子对象赋值;如果对象是非数组类型,对其进行数组下标赋值,将会导致输出数据不正常。例如,原始请求数据如下:
1{"data":{"arr":["1","2","3"],"item":{"sub_item":1}}}
此时,$.data.arr.new_index或者$.data.item[1].new_index是非法的。
如果必须这么修改,建议先清空$.data.arr或$.data.item后赋值,如下:
1 2 3 4 5 6
[ { "$.data.arr": "{}", "$.data.arr.new_index": "new_data" } ]
- 如果对象是数组类型,不支持不存在的负数下标赋值。例如,原始请求数据如下:
1{"data":{"arr":["1","2","3"],"item":{"sub_item":1}}}
对$.data.arr[-4]的赋值是非法的。如果需要在$.data.arr的最前面插入“0”,你可以倒序对$.data.arr进行赋值(正序赋值会改变原有值,导致结果不符合预期):
1 2 3 4 5 6 7 8
[ { "$.data.arr[3]": "$.data.arr[2]", "$.data.arr[2]": "$.data.arr[1]", "$.data.arr[1]": "$.data.arr[0]", "$.data.arr[0]": "0" } ]

