微信小程序获取用户真实信息

微信在2020年4月13日到4月28日调整了获取用户信息的接口,4月28日24时后发布的新版本小程序就获取不到用户的真实信息了

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5L2g55qE5Zuw5oOR,size_20,color_FFFFFF,t_70,g_se,x_16

 

附上原文链接:微信用户信息接口调整

注意事项:

调用wx.getUserInfo或<button open-type="getUserInfo"/>将不再弹出弹窗,而且返回的信息也是匿名的用户信息,如果需要获取用户真实的个人信息(头像、昵称、性别与地区),可以通过wx.getUserProfile接口进行获取,该接口从基础库2.10.4版本开始支持,该接口只返回用户个人信息,不包含用户身份标识符。需要注意这个接口获取用户个人信息每次都要用户确认,所以建议把用户的头像昵称存到自己服务器里,这样可以避免重复弹窗

 用法:

1.以下代码是在uni-app中实现:

<template>
    <view class="content">
        <button class="buttonSame" @tap="getUserInfo"></button>
    </view>
</template>
 
<script>
    export default {
        data: {
            return {userInfo: {}};
          },
        onLoad() {
            
        },
        methods: {
            getUserInfo:function(res){
             var that=this;
             wx.getUserProfile({
                    desc: '正在获取', //不写不弹提示框
                    success: function(res) {
                    console.log('获取成功: ', res.userInfo)
                    that.setData({
                        userInfo: res.userInfo
                     })
                    },
                    fail: function(err) {
                        console.log("获取失败: ", err)
                        //用户按了拒绝按钮
                        uni.showModal({
                            title: '警告',
                            content: '未授权不能登录!!!',
                            showCancel: true,
                            confirmText: '返回授权',
                            success: function(res) {
                                // 用户没有授权成功,不需要改变 isHide 的值
                                if (res.confirm) {
                                    console.log('用户点击了“返回授权”');
                                }
                                if (res.cancel) {
                                    console.log('用户取消授权');
                                }
                            }
                        });
                    }
                })
            } 
        }
    }
</script>

 


2.以下代码是微信小程序中实现:
 

<view class="container">
    <view class="content">
        <button class="buttonSame" bintap="getUserInfo"></button>
    </view>
</view>

<script>
 Page({
        data: {
            userInfo: {},
          },
        onLoad() {
            
        },
       getUserInfo(e){
           var that=this;
             wx.getUserProfile({
                    desc: '正在获取', //不写不弹提示框
                    success: function(res) {
                    console.log('获取成功: ', res.userInfo)
                    that.setData({
                        userInfo: res.userInfo
                     })
                    },
                    fail: function(err) {
                        console.log("获取失败: ", err)
                        //用户按了拒绝按钮
                        wx.showModal({
                            title: '警告',
                            content: '未授权不能登录!!!',
                            showCancel: true,
                            confirmText: '返回授权',
                            success: function(res) {
                                // 用户没有授权成功,不需要改变 isHide 的值
                                if (res.confirm) {
                                    console.log('用户点击了“返回授权”');
                                }
                                if (res.cancel) {
                                    console.log('用户取消授权');
                                }
                            }
                        });
                    }
               })  
          } 
  })      
</script>

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值