@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?
答案 0 :(得分:13)
jsonify
会返回Response
个对象,因此请在从您的视图返回之前将其捕获,然后使用Response.set_cookie
添加Cookie。
out = jsonify(state=0, msg='success')
out.set_cookie('my_key', 'my_value')
return out
您可能只想将值添加到会话cookie中。 Flask的session
将对json进行编码并对cookie进行签名以确保安全性,这是使用set_cookie
时必须手动执行的操作。
from flask import session
session['my_key'] = 'my_value'