收藏
回答

getUserInfo能力改变

框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
小程序 Bug button 客户端 6.6.6 1.9.90

官方发通知说,wx.getUserInfo在4月30日后,在体验版和测试版中,将不能弹出授权提示框,且该功能会被移除.

  1. 我想知道 我用button type为getUserInfo验证组件,之后再用wx.getUserInfo获取用户信息可以吗?

  2. 为什么非要用wx.getUserInfo,因为我要在button按钮点击后,wx.login一下,获取code,之后获取sessionKey,之后去解密加密的用户信息获取Unionid,请官方回答一下1。

回答关注问题邀请回答
收藏

68 个回答

  • 新新新丶
    新新新丶
    2018-04-26

    其实我试了通过 <button> 去获取userInfo, 并在时间内调用 wx.login 拿 code 和userinfo的信息去解密是可以的。

    会不会是解密方式不对呢?

    2018-04-26
    有用
    回复
  • 陈龙
    陈龙
    2018-04-26

    哪里看到的这个方法:wx.getUserInfoWithoutConfirm

    2018-04-26
    有用
    回复
  • marvin
    marvin
    2018-04-26

    @陈龙  你这种方式不太好吧, button授权和wx.getUserInfo一致, 都会弹窗, 我觉得那个button只是微信这边自己把wx.getUserInfo给封装了, 我这边目前还没有想到什么好的方法解决.


    不过我看到2.0.0的小程序版本有新增很多方法, 比如说wx.getUserInfoWithoutConfirm的方法, 可以成功调用, 和wx.getUserInfo表现一致, 但是不知道使用场景的限制, 官方目前还没有相关文档说明.

    2018-04-26
    有用
    回复
  • 少爷
    少爷
    2018-04-26

    这样解决不好,有好的解决到时候分享下;我跟你问题一模一样

    2018-04-26
    有用
    回复
  • 陈龙
    陈龙
    2018-04-26

    目前是使用button 获取授权.  授权成功通过 wx.login 之后再 wx.getuserinfo进行操作.

    但是wx.getuserinfo 不是要作废了嘛,所以想找一个好的方案.

    2018-04-26
    有用
    回复
  • 少爷
    少爷
    2018-04-26

    楼主code失效哪个时机重新获取,难道让其用户重新进入小程序?

    2018-04-26
    有用
    回复
  • 陈龙
    陈龙
    2018-04-26

    @昨日の星屑  有解决方案吗?

    2018-04-26
    有用
    回复
  • marvin
    marvin
    2018-04-26

    我们这边也遇到获取unionId的问题


    如果是新用户, 不满足code获取unionId的条件, 只能通过getUserInfo获取, 但是wx.login必须要在getUserInfo之前调用, 如果由官方提供的按钮来触发回调, 开发者不方便把控wx.login的调用时机


    使用button的bindgetuserinfo, 和之前的wx.getUserInfo一样, 是会有弹窗确认的, 我们自己处理, button也可能是通过自定义模态框来显示, 重复弹窗, 这种交互方式不太优雅.

    2018-04-26
    有用
    回复
  • 陈龙
    陈龙
    2018-04-26

    所以感觉目前方案还是:

    1. 提前获取code,但是code有效期是5分钟。点击button按钮有可能失效.需要重新获取code.或者控制sessionKey.

    2. 使用button getuserinfo授权,继续使用wx.getuserinfo获取私密信息.

    2018-04-26
    有用
    回复
  • 新新新丶
    新新新丶
    2018-04-26

    其实一开始的时候就掉过这个坑,先调用getUserInfo 再调用 login 是解密是失败的

    2018-04-26
    有用
    回复

正在加载...

登录 后发表内容