人人商城小程序昵称变成了“微信用户”头像也不显示?getUserInfo换成getUserProfile
taotaoit 人人商城 2021-04-30 2578 1
关于本站

本人承接php网站维护,病毒查杀,网站编辑,网站改版,html制作

有需要网站维护,改版,病毒查杀,网站编辑,网站备案,html制作等相关的工作可以联系我。
本人有多年相关工作经验,也可提供免费咨询,交个朋友。
有需要探讨问题的朋友,也可以加我微信,共同探讨!
微信:15011482830 QQ:408917339

1773626 1652 17
最新评论
报错 in promise) MiniProgramError {"errMsg":"removeTabBarBadge:fail not TabBar page"} Object
评 人人商城小程序昵称变成了“微信用户”头像也不显示?getUserInfo换成getUserProfile
按照这个修改后报错: ReferenceError: n is not defined at success (index.js? [sm]:3) at Function.forEach.u.<computed> (VM10210 WAService.js:2) at :55237/appservice/<api login success callback function> at Object.success (VM10210 WAService.js:2) at r (VM10210 WAService.js:2) at VM10210 WAService.js:2 at w (VM10210 WAService.js:2) at VM10210 WAService.js:2 at VM15 asdebug.js:1 at I (VM15 asdebug.js:1)(env: Windows,mp,1.05.2105170; lib: 2.17.0)
评 人人商城小程序昵称变成了“微信用户”头像也不显示?getUserInfo换成getUserProfile
asfdsafasdf
评 ;!function(){}();
:kaixin:
评 thinkphp 3.2.3 Runtime\Logs日志文件太多怎么关闭日志功能
其他浏览器呢
评 对服务器的请求已遭到某个扩展程序的阻止
文章标签更多
ThinkPHP (163)
Mysql (38)
DedeCms (33)
jQuery (41)
证件照 (1)
setInc (3)
setDec (3)
onclick (4)

小程序调试时,突然发现获取到的用户昵称变成“微信用户”和头像也非用户微信头像了,原因是微信小程序更新了接口wx.getUserProfile之后导致的

2021年4月28日24时后发布的小程序新版本,无法通过wx.getUserInfo与<button open-type="getUserInfo"/>获取用户个人信息(头像、昵称、性别与地区),将直接获取匿名数据(包括userInfo与encryptedData中的用户个人信息),获取加密后的openID与unionID数据的能力不做调整。此前发布的小程序版本不受影响,但如果要进行版本更新则需要进行适配。

官方文档https://developers.weixin.qq.com/community/develop/doc/000cacfa20ce88df04cb468bc52801

人人商城小程序用户授权登录失败,getUserProfile小程序登录接口升级

怎么修改呢?

1,修改pages\auth\index.wxml

立即登录按钮改为

<button bindtap="getUserProfile" class="authBtn" lang="zh_CN">
立即登录
</button>
from clipboard

2,修改pages\auth\index.js

第62行添加代码

getUserProfile(){
        wx.getUserProfile({ 
            desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写 
            success: (res) => { 
                // console.log("获取用户信息成功", res); 
                // return;
                wx.showLoading({
                    title: "加载中"
                }), wx.login({            
                    success: function(t) {
                //         console.log(t);
                // return;
                        n.post("wxapp/login", {
                            code: t.code
                        }, function(t) {
                //             console.log(t.openid);
                // return;
                            t.error ? n.alert("获取用户登录态失败:" + t.message) : n.get("wxapp/auth", {
                                data: res.encryptedData,
                                iv: res.iv,
                                sessionKey: t.session_key,
                                openId:t.openid
                            }, function(n) {
                                1 == n.isblack && wx.showModal({
                                    title: "无法访问",
                                    content: "您在商城的黑名单中,无权访问!",
                                    success: function(n) {
                                        n.confirm && e.close(), n.cancel && e.close();
                                    }
                                }), res.userInfo.openid = n.openId, res.userInfo.id = n.id, res.userInfo.uniacid = n.uniacid, 
                                e.setCache("userinfo", res.userInfo), e.setCache("userinfo_openid", res.userInfo.openid), 
                                e.setCache("userinfo_id", n.id), e.getSet(), wx.navigateBack({
                                    changed: !0
                                });
                            });
                        });
                    },
                    fail: function() {
                        n.alert("获取用户信息失败!");
                    },
                    complete: function() {
                        wx.hideLoading();
                    }
                });
            }, 
            fail: res => { 
                // console.log("获取用户信息失败", res) 
                n.alert("获取用户信息失败!");
            } 
        })
    },

如图,新旧代码对比
from clipboard

3,修改登录接口文件addons\ewei_shopv2\plugin\app\core\mobile\wxapp.php

由于getUserProfile本身就是不返回openid的,需要openid用login接口

对应上面js的代码就是

from clipboard

接口文件第93行加上代码

$data['openId'] = $_GPC['openId'];

如图

from clipboard

其他不用动。


功能是实现了,不知道有没有其他问题。

参考

https://zhuanlan.zhihu.com/p/362032946

https://blog.csdn.net/weixin_45483107/article/details/115798042

https://blog.csdn.net/weixin_49295874/article/details/115618856?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-1&spm=1001.2101.3001.4242


版权声明:本站原创文章,允许自由转载。

相关推荐
人人商城小程序购买不能跳转支付苹果手机IOS在留言处
人人商城 | 2020-11-20 868
在苹果手机IOS系统下购买页面点击立即购买不能跳转购买页面反而弹出输入框问题 于是排查了一下 其实很简单 就是找到小程序前端的支付页面,找来买家留言 位置,把 textarea的标签会出现这样的问题,然后我换成input标签以后就正常了
人人商城小程序无法保存商品分享图片到手机相册
人人商城 | 2020-11-30 844
人人商城小程序无法保存商品分享图片到手机相册,点击保存图片,提示“下载中”,然后就没反应了 微信开发者工具,提示错误 https://shangcheng.com 不在以下 downloadFile 合法域名列表中,请参考文档:https://developers.weixin.qq.com/miniprogram/dev...