Пaраметр chains#
Опциональные параметры: -chains
Группа, включающая в себя следующие параметры:
параметр chains_request- ;
параметр chains_response -.
Тип параметра: группа параметров и их значения.
По умолчанию: значения группы задаются пользователем.
Пример использования chains:
chains:
request_chains:
- actions:
- action: JsonValidation
params:
validation_schema: {type: file, path: schemes/json/v1/leasing.order.buy.POST.rq.v1.json}
conditions:
- {var: $request_method, operator: '=', val: 'POST'}
# Условия вызова валидатора теперь перечисляются в conditions
message: $clj_request_body
response_chains:
- actions:
- action: JsonValidation
params:
validation_schema: {type: file, path: schemes/json/v1/leasing.order.buy.POST.rs.v1.json}
action: ignore
conditions:
- {var: $request_method, operator: '=', val: 'POST'}
- {var: $upstream_status, operator: '!~', val: '(?:500|502|503|504)'}
- action: JsonTransformer
# Непосредственно вызов экшена, выполняющего удаление дополнительных атрибутов
params: {elements_to_remove: $clj_validation_error_text}
# $clj_validation_error_text - переменная, содержащая в себе перечень ошибок валидации - выставляется в экшене JsonValidation
conditions:
- {var: $clj_validation_error_text, operator: '!=', val: ''}
# Условие вызова JsonTransformer'а - не пустая переменная с ошибками валидации
message: $clj_response_body
response_chain_properties:
use_post_processor: true
resp_gen_modify: 'on'
# Флаг, отвечающий за возможность переопределения тела ответа ResponseGenerator'ом. Этот флаг позволяет ResponseGenerator'у переопределить ответ от бэка другим ответом (который указан в правилах) для не ошибочных статусов (2ХХ, 3ХХ). Без этого флага действия по удалению элементов выполняться будут, но на конечный ответ пользователю это не повлияет.