#python #flask #cookies #backend
#python #flask #файлы cookie #серверная часть
Вопрос:
Я создаю серверную часть для своего веб-сайта, и для этого требуется, чтобы flask устанавливал файлы cookie. Когда я устанавливаю файлы cookie, он работает нормально, но когда я пытаюсь получить их с request.cookies.get('name')
помощью, он возвращает None. Я попытался просто вернуться request.cookies
, и все, что там было, это мои файлы cookie GA, а не тот, который я установил. Я делаю что-то не так? Вот мой код:
@app.route("/setcookie", methods=["GET", "POST"])
def setcookie():
resp = make_response(render_template("index.html"))
resp.set_cookie("authToken", "testestestestestestes", max_age=1)
return resp
@app.route("/getcookie", methods=["GET" ,"POST"])
def getcookie():
return request.cookies
index.html форма:
<form action="/setcookie" method="POST">
<button type="submit">Set</button>
</form>
<form action="/getcookie" method="POST">
<button type="submit">Get</button>
</form>
Я сравнил файлы cookie GA с файлами cookie, которые я установил, и единственным отличием было имя и значение, что еще больше меня смущает. Мне также не нужно ничего делать с ними во внешнем интерфейсе, их нужно только прочитать flask. Может кто-нибудь помочь? Спасибо
Ответ №1:
Вы устанавливаете max_age
значение 1
second, ваш файл cookie просто истекает, попробуйте увеличить max_age
значение
Комментарии:
1. Спасибо, это исправлено. Я думал, что max_age представляет дни? Знаете ли вы, какую единицу времени он представляет?
2. Секунд, см. Документацию Flask: flask.palletsprojects.com/en/1.1.x/api