response_body_filters
在对比前对响应体应用 Perl 过滤函数。
语法
--- response_body_filters 段指定一个 Perl 函数来预处理响应体,然后再与预期值比较。这对于去除不稳定的动态字段非常有用。
perl
1=== TEST 1: filter timestamp from body2--- config3 location /t {4 content_by_lua_block {5 ngx.say("time: " .. ngx.now())6 ngx.say("data: hello")7 }8 }9--- request10GET /t11--- response_body_filters12s/time: [\d.]+/time: FILTERED/13--- response_body14time: FILTERED15data: helloresponse_body_filters 接收的是 Perl 的 s/// 替换表达式,对 $_ 变量进行原地操作。