https://mp.weixin.qq.com/wiki?action=doc&id=mp1421140842&t=0.4622491167403&token=&lang=zh_CN#3
看文档里说明第四步拉取用户数据接口需要两个必要参数 access_token 和 openid(这两个参数在第二步可以获取)正常请求时没问题,但是我发现只要 access_token 的值是正确的,而 openid 值随便传也可以正常获取用户数据!!!
假设 acces_token 值为 valid_token, openid 正确值是 valid_openid正常请求应该是: https://api.weixin.qq.com/sns/userinfo?access_token=valid_token&lang=zh_CN&openid=valid_openid
异常请求1: https://api.weixin.qq.com/sns/userinfo?access_token=valid_token&lang=zh_CN&openid=invalid_openid
异常请求2: https://api.weixin.qq.com/sns/userinfo?access_token=valid_token&lang=zh_CN&openid=
异常请求3: https://api.weixin.qq.com/sns/userinfo?access_token=valid_token&lang=zh_CN
现在的现象就是异常请求 1 也能正常获取用户数据, 而异常请求 2 和 3 都会返回错误。
所以我理解你们 server 只通过 access_token 已经可以识别出正确的 openid 了, 那这个 API 又何必把 openid 设定成必传参数??望解答!