更新微信登录。
This commit is contained in:
parent
8cf7a53e40
commit
e073a5ed72
@ -98,7 +98,7 @@ async def login(
|
|||||||
user_code = generate_user_code(db)
|
user_code = generate_user_code(db)
|
||||||
|
|
||||||
user = UserDB(
|
user = UserDB(
|
||||||
nickname=f"user_{phone[-4:]}",
|
nickname=f"蜂友{phone[-4:]}",
|
||||||
phone=phone,
|
phone=phone,
|
||||||
user_code=user_code,
|
user_code=user_code,
|
||||||
referral_code=user_login.referral_code,
|
referral_code=user_login.referral_code,
|
||||||
@ -166,7 +166,7 @@ async def phone_login(
|
|||||||
user_code = generate_user_code(db)
|
user_code = generate_user_code(db)
|
||||||
|
|
||||||
user = UserDB(
|
user = UserDB(
|
||||||
nickname=f"user_{request.phone[-4:]}",
|
nickname=f"蜂友{request.phone[-4:]}",
|
||||||
phone=request.phone,
|
phone=request.phone,
|
||||||
user_code=user_code,
|
user_code=user_code,
|
||||||
referral_code=request.referral_code,
|
referral_code=request.referral_code,
|
||||||
|
|||||||
@ -40,10 +40,15 @@ async def wechat_phone_login(
|
|||||||
# 获取用户手机号
|
# 获取用户手机号
|
||||||
phone_info = await wechat.get_phone_number(request.phone_code)
|
phone_info = await wechat.get_phone_number(request.phone_code)
|
||||||
|
|
||||||
if not phone_info or not phone_info.get('phone_number'):
|
if not phone_info:
|
||||||
return error_response(code=400, message="获取手机号失败")
|
return error_response(code=400, message="获取手机号失败")
|
||||||
|
|
||||||
|
# 打印调试信息
|
||||||
|
print(f"获取到的手机号信息: {phone_info}")
|
||||||
|
|
||||||
phone = phone_info['phone_number']
|
phone = phone_info['phone_number']
|
||||||
|
if not phone:
|
||||||
|
return error_response(code=400, message="手机号为空")
|
||||||
|
|
||||||
# 查找或创建用户
|
# 查找或创建用户
|
||||||
user = db.query(UserDB).filter(UserDB.phone == phone).first()
|
user = db.query(UserDB).filter(UserDB.phone == phone).first()
|
||||||
@ -52,7 +57,7 @@ async def wechat_phone_login(
|
|||||||
user_code = generate_user_code(db)
|
user_code = generate_user_code(db)
|
||||||
|
|
||||||
user = UserDB(
|
user = UserDB(
|
||||||
nickname=f"user_{phone[-4:]}",
|
nickname=f"蜂友{phone[-4:]}",
|
||||||
phone=phone,
|
phone=phone,
|
||||||
user_code=user_code,
|
user_code=user_code,
|
||||||
referral_code=request.referral_code,
|
referral_code=request.referral_code,
|
||||||
|
|||||||
@ -59,10 +59,22 @@ class WeChatClient:
|
|||||||
except json.JSONDecodeError:
|
except json.JSONDecodeError:
|
||||||
raise Exception(f"解析微信返回数据失败: {text}")
|
raise Exception(f"解析微信返回数据失败: {text}")
|
||||||
|
|
||||||
|
# 打印调试信息
|
||||||
|
print(f"微信返回数据: {result}")
|
||||||
|
|
||||||
if result.get("errcode", 0) != 0:
|
if result.get("errcode", 0) != 0:
|
||||||
raise Exception(result.get("errmsg", "获取手机号失败"))
|
raise Exception(result.get("errmsg", "获取手机号失败"))
|
||||||
|
|
||||||
return result.get("phone_info", {})
|
# 正确获取 phone_info
|
||||||
|
phone_info = result.get("phone_info")
|
||||||
|
if not phone_info:
|
||||||
|
raise Exception("未获取到手机号信息")
|
||||||
|
|
||||||
|
return {
|
||||||
|
"phone_number": phone_info.get("phoneNumber"),
|
||||||
|
"pure_phone_number": phone_info.get("purePhoneNumber"),
|
||||||
|
"country_code": phone_info.get("countryCode"),
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
async def code2session(self, code: str) -> dict:
|
async def code2session(self, code: str) -> dict:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user