@user.route('/login', methods=['POST'])
def check_oauthuser():
token = request.args.get('token','')
open_u_id = request.args.get('openUId','')
_self_expires = 60 * 60 * 24 * 30 * 3
#re = Response()
#re.set_cookie('name','1111111')
if token!='' and open_u_id!='':
set_user_login_cache(user_id, token)
return jsonify(state=0,msg='success')
我想在响应头中设置一个cookie,但是我使用
jsonify
而不是创建Response
。返回jsonify
时我该怎么做以添加cookie? 最佳答案
jsonify
返回一个Response
对象,因此请先捕获它,然后再从 View 中返回并添加cookie,然后再添加Response.set_cookie
。
out = jsonify(state=0, msg='success')
out.set_cookie('my_key', 'my_value')
return out
您可能只想将值添加到 session cookie中。 Flask的
session
将对值进行json编码并签署cookie以确保安全性,这是您在使用set_cookie
时必须手动执行的操作。from flask import session
session['my_key'] = 'my_value'