gpt4 book ai didi

Python Flask - 使用装饰器设置 cookie

转载 作者:行者123 更新时间:2023-12-01 04:14:03 24 4
gpt4 key购买 nike

我正在尝试编写一个装饰器来检查 cookie,如果它不存在则设置一个。这是我拼命地试图让人们理解这个想法。

def set_cookie(f):
def decorated_function(*args, **kws):
if 'cstc' in flask.request.cookies.keys():
return make_response(f).set_cookie('cstc', value='value')
else:
return f
return decorated_function

@main.route('/home')
@set_cookie
def home():
return render_template('main/home.html')

现在我收到错误:

TypeError: home() takes no arguments (2 given)

最佳答案

你必须调用原始函数:

def set_cookie(f):
def decorated_function(*args, **kws):
response = f(*args, **kws)
response = make_response(response)
if 'cstc' in flask.request.cookies.keys():
response.set_cookie('cstc', value='value')
return response
return decorated_function

关于Python Flask - 使用装饰器设置 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34543157/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com