Атрибут expires
Атрибут expires применяется к объекту ответа
Response
и задаёт значение HTTP-заголовка Expires. Этот заголовок
сообщает браузеру и промежуточным кэшам, до какого момента
ответ считается свежим. Значением атрибута может быть строка
в формате HTTP-даты, например 'Wed, 21 Oct 2026 07:28:00 GMT',
либо None, чтобы снять ограничение. Если значение задано
некорректно, Bottle выбрасывает исключение при формировании ответа.
Синтаксис
response.expires = value
Пример
Давайте установим дату устаревания ответа на час вперёд:
from bottle import Bottle, response
from datetime import datetime, timedelta
app = Bottle()
@app.route('/')
def index():
expires_at = datetime.utcnow() + timedelta(hours=1)
response.expires = expires_at.strftime('%a, %d %b %Y %H:%M:%S GMT')
return 'hello'
Результат выполнения кода:
<+html+>
hello
<-html+>
Пример
Давайте посмотрим, как заголовок Expires попадает в ответ:
from bottle import Bottle, response
app = Bottle()
@app.route('/')
def index():
response.expires = 'Wed, 21 Oct 2026 07:28:00 GMT'
return 'article'
Результат выполнения кода в виде заголовков ответа:
<+html+>
Expires: Wed, 21 Oct 2026 07:28:00 GMT
<-html+>
Пример
Давайте сбросим атрибут expires в None,
чтобы убрать заголовок из ответа:
from bottle import Bottle, response
app = Bottle()
@app.route('/')
def index():
response.expires = None
return 'user'
Результат выполнения кода:
<+html+>
user
<-html+>
Смотрите также
-
класс
Response,
который представляет HTTP-ответ приложения -
атрибут
status,
который задаёт статус ответа -
атрибут
content_type,
который задаёт MIME-тип содержимого -
метод
set_header,
который устанавливает произвольный заголовок ответа