diff options
author | Zhidao HONG <z.hong@f5.com> | 2024-08-16 00:29:16 +0800 |
---|---|---|
committer | Zhidao HONG <z.hong@f5.com> | 2024-08-20 09:17:24 +0800 |
commit | debd61c3a4f7e5817bf842c2166217929ef80c88 (patch) | |
tree | 037909415bcd46a43a73ab89ca698ab74687243d /src/nxt_conf_validation.c | |
parent | 57f939569d3c3db11d8bbc7dd0b45693cbe3344e (diff) | |
download | unit-debd61c3a4f7e5817bf842c2166217929ef80c88.tar.gz unit-debd61c3a4f7e5817bf842c2166217929ef80c88.tar.bz2 |
http: Add "if" option to the "match" object
This feature allows users to specify conditions to check if one
route is matched. It is used the same way as the "if" option in
the access log.
Example:
{
"match": {
"if": "`${headers['User-Agent'].split('/')[0] == 'curl'}`"
},
"action": {
"return": 204
}
}
Diffstat (limited to '')
-rw-r--r-- | src/nxt_conf_validation.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/nxt_conf_validation.c b/src/nxt_conf_validation.c index 8f31bd18..5d7f7c52 100644 --- a/src/nxt_conf_validation.c +++ b/src/nxt_conf_validation.c @@ -696,6 +696,10 @@ static nxt_conf_vldt_object_t nxt_conf_vldt_match_members[] = { .type = NXT_CONF_VLDT_OBJECT | NXT_CONF_VLDT_ARRAY, .validator = nxt_conf_vldt_match_patterns_sets, .u.string = "cookies" + }, { + .name = nxt_string("if"), + .type = NXT_CONF_VLDT_STRING, + .validator = nxt_conf_vldt_if, }, NXT_CONF_VLDT_END |