• 保存到桌面  加入收藏  设为首页
小程序

微信小程序-js-微信重新授权-拒绝授权-获取用户信息

时间:2018-04-25 09:18:59   作者:江节胜   来源:胜行天下网   阅读:419   评论:0
wx.getUserInfo( 
{
    withCredentials: false,//暂时给false
    success: function (res) 
    {
        var userInfo = res.userInfo
              var nickName = userInfo.nickName
              var avatarUrl = userInfo.avatarUrl
              var gender = userInfo.gender //性别 0:未知、1:男、2:女
        var province = userInfo.province
              var city = userInfo.city
              var country = userInfo.country
              // console.log('getUserInfo=' + JSON.stringify(res));
        console.log('开始保存本地获取微信信息' + JSON.stringify(userInfo));
        SaveUserInfo(userInfo);
    }
    ,
        fail: function (e) 
    {
        wx.showModal( 
        {
            title: '警告',
                    content: '您点击了拒绝授权,将无法正常显示个人信息,点击确定重新获取授权。',
                    success: function (res) 
            {
                if (res.confirm) 
                {
                    wx.openSetting( 
                    {
                        success: (res) => {
                                        if (res.authSetting["scope.userInfo"]) 
                        {
                            ////如果用户重新同意了授权登录
                            wx.getUserInfo( 
                            {
                                success: function (res) 
                                {
                                    var userInfo = res.userInfo;
                                    SaveUserInfo(userInfo);
                                }
                            }
                            )
                        }
                    }
                    , fail: function (res) 
                    {
                    }
                }
                )
            }
        }
    }
    )
}
}
);
var SaveUserInfo = function (newData) 
{
var userinfo = wx.getStorageSync("userinfo") || 
{
}
;
for (var in newData) 
{
    userinfo[k] = newData[k];
}
console.log('更新存储新数据0:' + JSON.stringify(userinfo));
var gd = getApp().globalData || 
{
}
;
if (gd && gd.userinfo) 
{
    gd.userinfo = userinfo;
else 
{
    var newd = {
          "userinfo": userinfo
        }
        getApp().globalData = newd;
    //设置到globalData全局数据中 会不会丢失?
}
console.log('更新存储新数据1:' + JSON.stringify(getApp().globalData.userinfo));
wx.setStorageSync("userinfo", userinfo);
//这个后期废弃
console.log('更新存储新数据:' + JSON.stringify(wx.getStorageSync("userinfo")));
}

有任何疑问或技术合作都可联系我

微信:767000122 【推荐】

QQ:596957738


相关评论

加我微信 596957738 (QQ同号)加我微信   QQ联系:596957738   地址:江苏省南京市雨花台区

苏公网安备32011402010305号

皖ICP备16019989号

江节胜的Gitee,江节胜的Git地址