在做微信某个功能的时候,大致需求是:静默授权,得到openId ,然后拿着openId调用接口,判断是否关注。如果是关注的,则发放礼券。每个我网站的会员只会发放一次礼券。如果第二次则会提示已领取过礼券。
坑的表现为:我不管怎么换登会员号,总是提示我已领取过礼券,然后通过日志发现,静默授权的时候,发生了两次回调,时间间隔大概为1秒。也就是说,第一次回调后,我就将礼券发放到这个帐号了,第二次回调,自然就是失败了。而第一次发放的结果还没来得及展示就给第二次结果覆盖了。
看到网上有很多类似的案例,最后我发现竟然是我的那台手机有问题,不知道那台手机访问为什么会回调两次,换了台手机就不会,简直了。。。。。。。所以遇到这个问题的开发同学,不如换台手机测测。我最后也没搞明白什么手机会回调两次,可能只有微信自己能搞清楚了。。。我那台测试手机的型号为 小米2s 。我换过一台小米note来测试就不会了