Spec-Zone.ru › Caddy

Обработчики ответов

Обработчики ответов можно использовать для фильтрации (или классификации) ответов по определённым критериям.

Они обычно появляются только в конфигурации внутри других директив, чтобы принимать решения об ответе по мере его отправки клиенту.

  • Синтаксис
  • Обработчики
    • статус
    • заголовок

Синтаксис

@name {
	status <code...>
	header <field> [<value>]
}

Обработчики

статус

status <code...>

По коду HTTP-статуса.

  • <code...> — это список кодов HTTP-статуса. Специальными случаями являются строки вроде 2xx и 3xx, которые соответствуют всем кодам статуса в диапазоне 200-299 и 300-399 соответственно.

Пример:

@success status 2xx

заголовок

header <field> [<value>]

По полям заголовков ответа.

  • <field> — это имя поля HTTP-заголовка для проверки.
    • Если оно начинается с !, поле не должно существовать для соответствия (опустить аргумент значения).
  • <value> — это значение, которое должно иметь поле для соответствия.
    • Если оно начинается с *, выполняется быстрое совпадение по суффиксу (появляется в конце).
    • Если оно заканчивается на *, выполняется быстрое совпадение по префиксу (появляется в начале).
    • Если оно заключено в *, выполняется быстрое совпадение по подстроке (появляется где-то).
    • В противном случае, выполняется быстрое точное совпадение.

Разные поля заголовка в одном наборе соединяются операцией И. Несколько значений для одного поля соединяются операцией ИЛИ.

Обратите внимание, что поля заголовков могут повторяться и иметь разные значения. Приложения на стороне сервера ДОЛЖНЫ учитывать, что значения полей заголовка являются массивами, а не одиночными значениями, и Caddy не интерпретирует смысл в таких ситуациях.

Пример:

Сопоставить ответы с заголовком Foo, содержащим значение bar:

@upgrade header Foo *bar*

Сопоставить ответы с заголовком Foo, имеющим значение bar ИЛИ baz:

@foo {
	header Foo bar
	header Foo baz
}

Сопоставить ответы, у которых отсутствует поле заголовка Foo:

@not_foo header !Foo

© 2015-2025 Matthew Holt and The Caddy Authors
Licensed under the Apache License 2.0.
Caddy is a registered trademark of Stack Holdings GmbH.
https://caddyserver.com/docs/caddyfile/response-matchers

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API