wx.login 会刷新session_key。在userinfo button回调内调用wx.login,开发者获取到session_key是刷新后的session_key,而userinfo是以刷新前session_key做加密的。所以会解密失败。


以上是你们的回复。


但是,为什么不能在userInfo回调里把code等 wx.login的数据传进去?

改都改了,改一半是什么意思。


如此一来,我们只好明文将用户数据传到后台了(button 获取到用户信息后,在回调中调用 wx.login 拿到 Code给后台)。


这是你们逼我们的。

展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • 李振藩

    9人对此回答表示赞同

    建议首页就需要要登陆的按button获取用户信息,进入非首页的其他页面需要登陆获取信息的时候可以按原来的方式。

    展开
    9
    4回复
    发布于 6年前

    评论(4)

    收起评论

    • 旋转跳跃 2019-01-11 11:31

      微信官方逻辑有问题,现在被玩的没一点脾气

      回复
    • 李大莉 2019-01-13 09:34

      那至少……要把openid和unionid给我们啊。不太可能有人获取用户信息不保存到数据库的。

      回复
    • 偷生者 2019-01-15 19:54

      估计因为这个code已经被他们自己取userinfo用掉了,传给你也没用

      回复
    • 李斯年 2019-01-17 14:41

      这样做并不能解决官方脑残的逻辑设定。既然button里自动调用wx.login,为什么不能把login之后的code返回给开发者。

      回复
  • Cooper55

    8人对此回答表示赞同

    官方都说明了,登录跟获取用户信息,并不冲突。换个思路就可以解决了,比如在app.launch就去登陆

    展开
    8
    5回复
    发布于 6年前

    评论(5)

    收起评论

    • fjbiubiubiu 2019-01-09 09:48

      我们目前是写两个接口,授权跟登录状态校验,每次请求接口吧session_key带上去。

      回复
    • 香草 2019-01-11 23:59

      因为解码需要session_key看应用场景吧....

      回复
    • Mackenzie 2019-01-13 10:22

      主要的问题是,既然都能获取到用户信息了,第一步肯定是先登录。

      回复
    • 马栏山壮士 2019-01-15 14:59

      code不是在登录的时候用的?和获取用户信息没有什么关系吧,我实在app.js中使用的wx.login(),在后面页面用button调的用户信息

      回复
    • 情深深 2019-01-17 12:32

      那样如果用户5分钟之内没有使用code,那么就会失效

      回复
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部