diff --git a/app/api/endpoints/wechat.py b/app/api/endpoints/wechat.py index 7a825c0..966d361 100644 --- a/app/api/endpoints/wechat.py +++ b/app/api/endpoints/wechat.py @@ -68,7 +68,7 @@ async def wechat_phone_login( #获取企业微信的 userid wecom_client = WecomClient() - wecom_info = await wecom_client.miniprogram_to_userid(openid=openid) + wecom_info = await wecom_client.miniprogram_to_userid(request.login_code) print(f"获取到的企业微信用户信息: {wecom_info}") wecom_userid = None diff --git a/app/core/wecomclient.py b/app/core/wecomclient.py index 19b139a..ce288fe 100644 --- a/app/core/wecomclient.py +++ b/app/core/wecomclient.py @@ -39,12 +39,12 @@ class WecomClient: logging.exception(f"获取企业微信访问令牌异常: {str(e)}") return None - async def miniprogram_to_userid(self, openid: str) -> Optional[Dict[str, Any]]: + async def miniprogram_to_userid(self, code: str) -> Optional[Dict[str, Any]]: """ - 小程序openid转换为企业微信userid + 小程序code转换为企业微信userid Args: - openid: 小程序用户的openid + code: 小程序用户的code Returns: Dict: 包含userid或pending_id的字典 @@ -56,7 +56,7 @@ class WecomClient: url = f"https://qyapi.weixin.qq.com/cgi-bin/miniprogram/jscode2session?access_token={token}" data = { - "code": openid, + "js_code": code, "grant_type": "authorization_code" }