Метод get_cookie
Метод get_cookie применяется к объекту запроса
request и возвращает значение cookie по его имени.
Первым параметром передаётся имя cookie. Вторым
необязательным параметром можно указать значение
по умолчанию, которое вернётся, если cookie с таким
именем отсутствует. Третьим необязательным параметром
можно передать секрет для проверки подписи cookie.
Синтаксис
request.get_cookie(name, [default], [secret])
Пример
Давайте получим значение cookie с именем 'user':
from bottle import Bottle, request
app = Bottle()
@app.route('/')
def index():
res = request.get_cookie('user')
return str(res)
Если cookie 'user' не установлена, результат
выполнения кода будет таким:
"None"
Пример
Давайте укажем значение по умолчанию для случая, когда cookie отсутствует:
from bottle import Bottle, request
app = Bottle()
@app.route('/')
def index():
res = request.get_cookie('user', 'guest')
return res
Результат выполнения кода, если cookie 'user'
не установлена:
"guest"
Пример
Давайте установим cookie, а затем прочитаем её значение в другом обработчике:
from bottle import Bottle, request, response
app = Bottle()
@app.route('/set')
def set_cookie():
response.set_cookie('user', 'abcde')
return 'cookie set'
@app.route('/get')
def get_cookie():
res = request.get_cookie('user')
return str(res)
Результат выполнения кода для адреса /get после
посещения /set:
"abcde"
Пример
Давайте прочитаем подписанную cookie, передав секрет третьим параметром:
from bottle import Bottle, request, response
app = Bottle()
@app.route('/set')
def set_cookie():
response.set_cookie('user', 'abcde', secret='mysecret')
return 'cookie set'
@app.route('/get')
def get_cookie():
res = request.get_cookie('user', secret='mysecret')
return str(res)
Результат выполнения кода для адреса /get:
"abcde"
Смотрите также
-
класс
Request,
который представляет HTTP-запрос -
атрибут
cookies,
который хранит все cookie запроса -
метод
get_header,
который возвращает заголовок запроса -
атрибут
headers,
который хранит все заголовки запроса