Closed LOFTERART closed 4 years ago
可以附上代码吗?
可以附上代码吗?
fmt.Println(item.SessionKey, "-----") fmt.Println(item.EncryptedData) fmt.Println(item.Iv) fmt.Println(item.UserID) //1查找user u := model.User{ BaseInfo: model.BaseInfo{ ID: item.UserID, }, } //2解密用户手机号信息 res, err := weapp.DecryptMobile(item.SessionKey, item.EncryptedData, item.Iv) fmt.Println(res, err, "-----wxinfo---") if err != nil { return &u, err }
启动通过小程序的 code获取的ssk ,也都是有效的 wx.checksession 也是通过的 ;
好的,空了我核对下。记得一定是先完成登陆流程然后再获取的电话加密数据才有效哦;
好的,空了我核对下。记得一定是先完成登陆流程然后再获取的电话加密数据才有效哦; 是的,是这样操作的,小程序启动通过code 获取ssk 前端存入缓存 获取手机号的时候从缓存读取得ssk
好的,空了我核对下。记得一定是先完成登陆流程然后再获取的电话加密数据才有效哦; // decryptUserData 解密用户数据这个函数先base64编码在base64解码 我那个错误能解决,接下来的cbcDecrypt(CBC解密数据)一直走到这个错if len(ciphertext) % size != 0 { return nil, errors.New("ciphertext is not a multiple of the block size") }
编码 base64.StdEncoding.EncodeToString
每次小程序用户提交解密数据后 后台解析报这个错 每次 'x1a'这个地方会有变化. invalid character '\x1a' looking for beginning of value
换 了个小程序可以获取到手机号信息,很奇怪了 ,能够获取到的是之前正式发布过,新申请的这个小程序获取不到信息 报这个错一直
找到问题了 数据库垃圾数据造成的 清空数据库 都可以获取到数据了 可以close到问题了 谢谢啦
OK👌
每次小程序用户提交解密数据后 后台解析报这个错 每次 'x1a'这个地方会有变化. invalid character '\x1a' looking for beginning of value