vars
将一个或多个变量设置为一个特定的值,以便在以后的请求处理链中使用。
访问变量的主要方式是使用占位符,其形式为{vars.variable_name}
,或者使用vars
和vars_regexp
请求匹配器。
语法
vars [<matcher>] [<name> <value>] { <name> <value> ... }
-
**<name>**是要设置的变量名称。
-
**<value>**是该变量的值。
如果可能的话,该值将进行类型转换;
true
和false
将被转换为布尔类型,数字值将被相应地转换为整数或浮点数。为了避免这种转换,你可以用引号来包裹输出,它们将保持为字符串。
示例
设置一个单一的变量,该值是基于请求路径的条件,然后用该值进行响应:
vars /foo* isFoo "yep" vars isFoo "nope" respond {vars.isFoo}
要设置多个变量,每个变量都转换为适当的标量类型:
vars { # boolean abc true # integer def 1 # float ghi 2.3 # string jkl "example" }