昨天晚上 21 点 34 分左右,服务器涌入大量请求,这些请求的 UA 完全一致
'user-agent' => 'Mozilla/5.0 (Linux; Android 6.0.1; C106 Build/ZAXCNFN5902606201S; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132 MQQBrowser/6.2 TBS/044304 Mobile Safari/537.36 MicroMessenger/6.6.7.1321(0x26060739) NetType/WIFI Language/zh_CN' 很奇怪,主要有一下几点疑问
- 这些接口调用微信小程序内部的 login 方法得到了 Code,通过 Code 可以在微信 API 接口中获取到 OpenID,没有发生错误。
- 上条是否可以判定这些 Code 就是正确的 Code?
- 如果可以判定这些 Code 是正确的 Code,在一分钟内发送了大概 1w+的 Code 并且获取到了 OpenID,但这些所有的请求的 UA 完全一致,并且使用了‘ x-forwarded-for ’伪造了 IP。

以我的猜测,这些 Code 确实是正确的 Code,但是可能是从 Q 控 /X 议里面批量得到的,然后某些人收购 Code,通过这些 Code 批量请求
目前的解决方案,增加用户授权的操作,通过微信的 wx.getUserInfo 方法中 encryptedData 返回值判断。
这种方法增加了用户的操作,整体流程繁琐了,不知道大家有没有什么好的解决办法。
