回复时设置的Cookies对persis来说似乎不太合适

2024-04-24 07:11:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在OAuth登录时设置一些cookies。但是,下一次请求时,cookies似乎不在那里。在下面的代码中设置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)

Tags: keytokenurlagegetsecretaccesscookie
1条回答
网友
1楼 · 发布于 2024-04-24 07:11:37

您创建了一个响应并设置了一些cookie,但随后将其丢弃并使用重定向返回一个不同的响应。相反,重定向应该是您设置cookies的响应。你知道吗

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

相关问题 更多 >