过滤器
数据段过滤器用于在比较之前对段的值进行转换处理。
过滤器概览
过滤器附加在段名之后,可以链式使用。框架内置以下过滤器:
| 过滤器 | 作用 | 示例 |
|---|---|---|
chomp | 去除末尾的换行符 | --- response_body chomp |
chop | 去除末尾的最后一个字符 | --- response_body chop |
eval | 将值作为 Perl 表达式执行 | --- response_body eval |
trim | 去除首尾空白字符 | --- response_body trim |
chomp 过滤器
chomp 是最常用的过滤器,去除段值末尾的换行符:
perl
1# 不使用 chomp:预期值末尾会自动加 \n2--- response_body3hello45# 使用 chomp:精确匹配,不加 \n6--- response_body chomp7helloeval 过滤器
eval 过滤器将段值作为 Perl 代码执行,返回值作为实际值:
perl
1# 生成包含特殊字符的字符串2--- response_body eval3"line1\nline2\n"45# 生成大量数据6--- request eval7"POST /t\n" . ("x" x 4096)89# 生成数组(用于 pipelined_requests)10--- response_body eval11["resp1\n", "resp2\n", "resp3\n"]eval 过滤器在需要处理二进制数据、特殊字符或动态内容时非常有用。