update pay ui
This commit is contained in:
14
app.py
14
app.py
@@ -374,13 +374,16 @@ else:
|
||||
# Cookie 配置 - 重要:HTTPS 环境必须设置 SECURE=True
|
||||
app.config['SESSION_COOKIE_SECURE'] = True # 生产环境使用 HTTPS,必须为 True
|
||||
app.config['SESSION_COOKIE_HTTPONLY'] = True # 生产环境应设为True,防止XSS攻击
|
||||
app.config['SESSION_COOKIE_SAMESITE'] = 'Lax' # 使用'Lax'以平衡安全性和功能性
|
||||
# SameSite='None' 允许微信内置浏览器在 OAuth 重定向后携带 Cookie
|
||||
# 必须配合 Secure=True 使用(已在上面配置)
|
||||
app.config['SESSION_COOKIE_SAMESITE'] = 'None' # 微信浏览器兼容性:必须为 None
|
||||
app.config['SESSION_COOKIE_DOMAIN'] = None # 不限制域名
|
||||
app.config['SESSION_COOKIE_PATH'] = '/' # 设置cookie路径
|
||||
app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(days=7) # session持续7天
|
||||
app.config['REMEMBER_COOKIE_DURATION'] = timedelta(days=30) # 记住登录30天
|
||||
app.config['REMEMBER_COOKIE_SECURE'] = True # 生产环境使用 HTTPS,必须为 True
|
||||
app.config['REMEMBER_COOKIE_HTTPONLY'] = True # 防止XSS攻击
|
||||
app.config['REMEMBER_COOKIE_SAMESITE'] = 'None' # 微信浏览器兼容性
|
||||
|
||||
# 初始化 Flask-Session(仅在启用 Redis Session 时)
|
||||
if USE_REDIS_SESSION:
|
||||
@@ -3447,7 +3450,16 @@ def register_with_phone():
|
||||
@app.route('/api/account/phone/send-code', methods=['POST'])
|
||||
def send_sms_bind_code():
|
||||
"""发送绑定手机验证码(需已登录)"""
|
||||
# 调试日志:检查 session 状态
|
||||
user_agent = request.headers.get('User-Agent', '')
|
||||
is_wechat = 'MicroMessenger' in user_agent
|
||||
print(f"[绑定手机验证码] User-Agent: {user_agent[:100]}...")
|
||||
print(f"[绑定手机验证码] 是否微信浏览器: {is_wechat}")
|
||||
print(f"[绑定手机验证码] session 内容: logged_in={session.get('logged_in')}, user_id={session.get('user_id')}")
|
||||
print(f"[绑定手机验证码] Cookie: {request.cookies.get('session', 'None')[:20] if request.cookies.get('session') else 'None'}...")
|
||||
|
||||
if not session.get('logged_in'):
|
||||
print(f"[绑定手机验证码] ❌ 未登录,拒绝请求")
|
||||
return jsonify({'error': '未登录'}), 401
|
||||
|
||||
data = request.get_json()
|
||||
|
||||
Reference in New Issue
Block a user