INTEGRITY Документация

Browser TTL

Browser TTL определяет, как долго изображение остаётся в кеше браузера, и настраивает непосредственно cache-control заголовок ответа.

TTL по умолчанию

По умолчанию TTL изображения составляет два дня, чтобы учесть такие сценарии, как повторная загрузка изображения с тем же Custom ID.

Пользовательская настройка

Для управления Browser TTL доступны два отдельных параметра: один действует на уровне аккаунта, другой относится только к именованному варианту. Чтобы указать, как долго браузер должен хранить изображение в кэше, задайте TTL в секундах, аналогично тому, как это делает заголовок max-age заголовок установлен. Значение должно быть интервалом от одного часа до одного года.

Browser TTL для аккаунта

Настройка Browser TTL на уровне аккаунта переопределяет TTL по умолчанию.

Пример
curl --request PATCH 'https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/config' \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
  "browser_ttl": 31536000
}'

Если для Browser TTL всех изображений задан один год, ответ для cache-control заголовок по сути public, max-age=31536000, stale-while-revalidate=7200.

Browser TTL для именованного варианта

Настройка Browser TTL для именованного варианта представляет собой более точную настройку, которая переопределяет все параметры, перечисленные выше, при создании или обновлении варианта изображения, а именно browser_ttl в секундах.

Пример
curl 'https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_TAG>/images/v1/variants' \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
  "id":"avatar",
  "options": {
    "width":100,
    "browser_ttl": 86400
  }
}'

Если для Browser TTL изображений, запрошенных с этим вариантом, задан один день, ответ для cache-control заголовок по сути public, max-age=86400, stale-while-revalidate=7200.