def test_refresh_token(): """ 刷新token,获取新的数据获取token :return: """ res = ResMsg() refresh_token = request.args.get("refresh_token") if not refresh_token: res.update(code=ResponseCode.InvalidParameter) return res.data payload = Auth.decode_auth_token(refresh_token) # token被串改或过期 if not payload: res.update(code=ResponseCode.PleaseSignIn) return res.data # 判断token正确性 if "user_id" not in payload: res.update(code=ResponseCode.PleaseSignIn) return res.data # 获取新的token access_token = Auth.generate_access_token(user_id=payload["user_id"]) data = { "access_token": access_token.decode("utf-8"), "refresh_token": refresh_token } res.update(data=data) return res.data
def eventSubscribe(msg): Redis.write(msg.scene_id, msg.source) # 创建 access_token access_token = Auth.generate_access_token(user_id=msg.source) if access_token: access_token = access_token.decode('utf-8') logger.debug("用户初次订阅行为,flag为: ", msg.scene_id) # 查询用户详细信息 user = client.user.get(msg.source) # 开始用户登陆或注册 user_login = wx_login_or_register(user) # 缓存用户信息 Redis.write( msg.source, json.dumps( dict(user_id=user_login['id'], access_token=access_token, headimgurl=user['headimgurl'], nickname=user['nickname'], admin=user_login['admin'])))
def eventscan(msg): Redis.write(msg.scene_id, msg.source) # 创建 access_token access_token = Auth.generate_access_token(user_id=msg.source) if access_token: access_token = access_token.decode('utf-8') logger.debug("已订阅用户扫描行为,flag为: ", msg.scene_id) # 查询用户详细信息 client = C_WeChatClient._get_wechatclient() user = client.user.get(msg.source) # 开始用户登陆或注册 user_login = wx_login_or_register(user) # 缓存用户信息 Redis.write( msg.source, json.dumps( dict(user_id=user_login['id'], access_token=access_token, headimgurl=user['headimgurl'], nickname=user['nickname'], admin=user_login['admin'])))