update pay ui
This commit is contained in:
55
app.py
55
app.py
@@ -3184,22 +3184,51 @@ def send_sms_code(phone, code, template_id):
|
||||
|
||||
|
||||
def send_email_code(email, code):
|
||||
"""发送邮件验证码"""
|
||||
try:
|
||||
print(f"[邮件发送] 准备发送验证码到: {email}")
|
||||
print(f"[邮件配置] 服务器: {MAIL_SERVER}, 端口: {MAIL_PORT}, SSL: {MAIL_USE_SSL}")
|
||||
"""发送邮件验证码(使用 subprocess 绕过 eventlet DNS 问题)"""
|
||||
import subprocess
|
||||
import os
|
||||
|
||||
msg = Message(
|
||||
subject='价值前沿 - 验证码',
|
||||
recipients=[email],
|
||||
body=f'您的验证码是:{code},有效期5分钟。如非本人操作,请忽略此邮件。'
|
||||
try:
|
||||
# 获取脚本路径
|
||||
script_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'email_sender.py')
|
||||
|
||||
subject = '价值前沿 - 验证码'
|
||||
body = f'您的验证码是:{code},有效期5分钟。如非本人操作,请忽略此邮件。'
|
||||
|
||||
print(f"[邮件] 准备发送验证码到 {email}")
|
||||
print(f"[邮件] 服务器: {MAIL_SERVER}:{MAIL_PORT}, SSL: {MAIL_USE_SSL}")
|
||||
|
||||
# 使用 subprocess 在独立进程中发送邮件(绕过 eventlet DNS)
|
||||
result = subprocess.run(
|
||||
[
|
||||
sys.executable, # 使用当前 Python 解释器
|
||||
script_path,
|
||||
email,
|
||||
subject,
|
||||
body,
|
||||
MAIL_SERVER,
|
||||
str(MAIL_PORT),
|
||||
MAIL_USERNAME,
|
||||
MAIL_PASSWORD,
|
||||
str(MAIL_USE_SSL).lower()
|
||||
],
|
||||
capture_output=True,
|
||||
text=True,
|
||||
timeout=60
|
||||
)
|
||||
mail.send(msg)
|
||||
print(f"[邮件发送] 验证码邮件发送成功到: {email}")
|
||||
return True
|
||||
|
||||
if result.returncode == 0:
|
||||
print(f"[邮件] ✓ 发送成功: {result.stdout.strip()}")
|
||||
return True
|
||||
else:
|
||||
print(f"[邮件] ✗ 发送失败: {result.stderr.strip()}")
|
||||
return False
|
||||
|
||||
except subprocess.TimeoutExpired:
|
||||
print(f"[邮件] ✗ 发送超时")
|
||||
return False
|
||||
except Exception as e:
|
||||
print(f"[邮件发送错误] 发送到 {email} 失败: {str(e)}")
|
||||
print(f"[邮件发送错误] 错误类型: {type(e).__name__}")
|
||||
print(f"[邮件] ✗ 发送异常: {type(e).__name__}: {e}")
|
||||
return False
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user