怎么判断微信openid是正常的

做一个基于微信登录答题瓜分奖金的活动,结果在后台看保存的openId很奇怪,如下图:
OPENID

出现了很多这种前面相同,只是多了个等号(=);或者前面相同,后面有一个字母不同的情况,而且都获取不到用户头像和微信名。但发放奖金的时候用这个openid也可以发。这样的openid是不是正常的呢?

阅读 5.8k
3 个回答

去年底一个项目里有过类似的情况,当时也是用的PHP,bug现象是用户进授权页点击授权以后,会连续触发两次请求,而两次请求的Token相同,就会导致其中一个失效,最后就会有一个请求获取到用户信息、另一个什么都拿不到。由于其中一次请求可以成功拿到用户信息,所以单看入库信息或者主动log(PHP)的话会一头雾水,我也是翻到nginx的access.log才发现端倪的(nginx放在PHP前级代理),但是问题原因至今未知,只知道是用PHP的header('Location: '.$token_URL);这样的语句来做拿code的跳转就会有问题,而改成header('refresh:0;url='.$token_URL);就一切正常了。如果谁知道这个问题的来历,欢迎在下边评论区一起讨论~

只通过网页静默授权好像是不支持获取用户信息的。。虽然有openid。。。因为他没有授权更多信息给公众号

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题