响应设置的 Cookie 似乎不会持续存在

Cookies set on response don't seem to persist

我想在进行 OAuth 登录时设置一些 cookie。但是,下一次请求时,cookie 似乎不存在。在下面的代码中设置 cookie 的正确方法是什么?

@app.route("/login")
def login():
    verifier = request.args.get("oauth_verifier","")
    if verifier:
        token = request.cookies.get("token")
        secret = request.cookies.get("secret")
        access_token = oauth_helper.get_access_token(token,secret,verifier)
        resp = make_response()
        resp.set_cookie("token_key", access_token.key, max_age= 7*60*60 * 1000)
        resp.set_cookie("secret_key", access_token.secret, max_age= 7*60*60 * 1000)
        return redirect("/")
    else:
        token, secret, registration_url = oauth_helper.get_request_token_url()
        resp = make_response()
        resp.set_cookie('token', token, max_age= 60 * 1000)
        resp.set_cookie("secret", secret, max_age= 60 * 1000)
        return redirect(registration_url)

您正在创建响应并设置一些 cookie,但随后将其丢弃并通过重定向返回不同的响应。相反,重定向应该是您设置 cookie 的响应。

resp = redirect('/')
resp.set_cookie('token_key', access_token.key)
resp.set_cookie('secret_key', access_token.secret)
return resp