现在的调用流程是前端调用wx.getUserInfo获取iv和encrytedData,然后调用wx.login获取code,把这些数据传给后端,后端调用微信接口获取session_key对enceytedData进行解密,发现解出来的数据是错误的。

后端捕获到的error直接扔给了前端,前端拿到的信息是‘No JSON object could be decoded’,现在不太清楚这个错误的具体原因是什么?而且这个情况是频率比较高的偶现,有知道原因或者遇到一样情况的吗?

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

    2044人对此回答表示赞同

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

    20人对此回答表示赞同

    我也遇到了。自从,把wx.getUserInfo改为,buttonopen-type="getuserinfo"之后,经常发生,第一次,上报用户加密数据的时候,服务端会解密失败。

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

    评论(6)

    收起评论

    • baby爱我多一次 2019-01-09 11:53

      谢谢你哈。下午试试。

      回复
    • 雪中向日葵 2019-01-11 16:37

      问题找到了,其实原因是这样的,我们在getuserinfo没改之前,是先wx.login()拿到code,然后再调用getuserinfo,拿到iv等加密信息,实际上在我们的后端是通过code去获取session-key等信息,用来解密我们给过去的encryptedData加密信息的,但是你们注意下,这个getuserinfo一旦生成了,就不能再调用wx.login了,否则会导致后端从微信那边拿到的session-key不一样的,所以现在登录方案改了以后,我们都是等授权完了又去调用了一次login,这样就会有概率发生问题,不匹配了,所以我们为了确认一定没有问题,我现在是这么处理的,点击button的时候,getuserinfo只用来确认有没有授权,然后调用login拿到code后再去主动调用一次getuserinfo,从最新的userinfo中拿到最新的iv和encryptedData传给后端,这样就能确保用了getuserinfo后不会再有wx.login的调用了,wx.login是会刷新session的,切记~

      回复
    • 梨fa 2019-01-13 19:26

      好像看不到,第一条和最后一条,都是,旧评论

      回复
    • 多面体 2019-01-15 19:02

      能看到我上面的评论吗

      回复
    • 刀豆三郎 2019-01-17 18:06

      是么,怎么解决的

      回复
    • 邱世承 2019-01-19 19:18

      兄弟我解决了找到问题了

      回复
  • 三层楼

    17人对此回答表示赞同

    仅提供这个错误信息无法定位问题。请逐步排查从前端传递到后台解密过程中的数据是否异常。

    展开
    17
    1回复
    发布于 5年前

    评论(1)

    收起评论

    • wtfjunglebell 2019-01-13 09:59

      怎么排查呢?我们已经看过了从前端给过去的code和encrytedData是没问题的,问题就是在解密的时候出现的~解析出来的是一堆乱码

      回复
  • Ryan

    14人对此回答表示赞同

    顶一下,让官网看到~

    展开
    14
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • Strawberry8

    8人对此回答表示赞同

    顶一下,让官方看到。

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

    评论(0)

    收起评论

  • Alexander

    1人对此回答表示赞同

    顶一下,让官网看到,我也遇到过这个问题。大部分的时候,是解密成功的,但有时候就是失败,而且,用官网提供的解密例子代码,也是同样解密不了,真蛋疼。

    展开
    1
    4回复
    发布于 5年前

    评论(4)

    收起评论

    • 林小姐也是lyn 2019-01-11 22:58

      你刷新了sessionkey之后重新获取了加密信息吗,要不然肯定解密失败了

      回复
    • Cody 2019-01-13 10:58

      能看到我上面的评论吗

      回复
    • Madelyn 2019-01-15 11:33

      怎么解决的?什么问题?

      回复
    • betty 2019-01-17 08:22

      兄弟我解决了找到问题了

      回复
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
扫码咨询

扫码咨询套餐

回到顶部