急!!!!想问下关于解密用户信息的问题,求大佬解答!!!
发布于 6 年前 作者 zzhong 9481 次浏览 来自 问答

查了一下,getuserinfo获取到的加密信息解密时会有几率失败,请问各位大佬有没有什么好的解决方法!!!!!!急!!!!!!!!!!!!!!!!

3 回复

我现在是这样处理的,当解密失败的时候再去调用自身,结果就是无限的失败… 请问下有没有什么办法能够解决

这个问题我已经彻底解决了,其实方案很简单,换一下思路就好了!

在按钮的getuserinfo事件中首先判断是否选择同意,代码如下:

const eUserRes = e && e.detail

if (!eUserRes.iv || !eUserRes.encryptedData) {

    return

}

这里会直接判断是否同意授权,如果选择拒绝,程序就不会再往下走了

接下来调用login和useinfo:

        try {

            wx.login({

                success: function (login) {

                    wx.getUserInfo({

                        success: function (userRes) {

                            const params = {

                                js_code: login.code,

                                encrypted_data: userRes.encryptedData,

                                iv: userRes.iv

                            }

                        // 业务自己的登录逻辑在这儿写

                        }

                    })

                }

            })

        } catch (error) {

          console.log(‘登录失败’)

        }

这么做百分百不会再有失败的情况了,希望能帮到大家

回到顶部