18910140161

cocos + KBEngine开发微信小游戏之微信登陆

顺晟科技

2021-06-16 10:38:21

364

由于微信游戏不提供服务器获取微信用户详细信息的接口,游戏的用户信息将依赖客户端获取并上报给服务器,服务器需要验证客户端上报信息的合法性,以确保数据的正确性。整个过程是:

1.authorize (wx.authorize):客户端首先获得查询用户信息的权限。

2.获取用户信息(wx.getUserInfo):客户端通过微信服务获取用户信息(UserInfo)。我们在这里使用的用户信息包括:用户详细信息用户信息['用户信息'],没有敏感信息的原始数据字符串用户信息['原始数据'],以及sha1(原始数据会话密钥)获得的字符串用户信息['签名']。

3.微信登录(wx.login):客户端从微信服务获取登录证书(代码)。

3.游戏登录:客户端用用户信息(userInfo)和登录凭证(code)发起登录服务器

4.服务器登录(auth.code2Session):服务器首先通过登录凭证(代码)从微信服务获取该登录的用户ID (openid)和会话密钥(session_key)。

5.服务器端验证:使用sha1算法为userInfo['rawData'] session_key获取加密密钥,比较密钥和userInfo['signature']是否相同,判断数据的正确性。

6.服务器使用客户端上传的用户详细信息来创建游戏角色

我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航