Flask не получает файлы cookie

#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