这两天搞活动的时候被刷的很惨,对方直接通过调接口参与活动。以至于每小时 PV 500 多,参与用户 1 万+ 。。。
然后问题就是怎么才能区分出来正常操作的用户和调接口刷单的用户。最好能做到对用户透明,但是能有效地恶心到刷单的人。我是希望能找到一个 js 执行成本很低,但对其他语言执行成本很高的方法。在提交之前先执行这个方法,然后把结果作为验证值 post 上来。
比如说, js 用 CSS 选择器在 html 中选元素非常方便,但其他语言基本没法这样做,所以可以由后端返回一串 css 选择器, js 在浏览器里执行后把元素长度返回回来,跟后端设定值对照一下,不一致就可以判断是刷单。这样写上 20 个选择器,每半小时换一个,基本可以过滤掉所有靠易语言刷单的人了。
但这种方法对于用 python 刷单,又知道 BeautifulSoup 的人就无效了。
所以,有没有什么方法,可以有效地把刷单用户给区分开呢(只要能有效提高对方的刷单成本就行)
附:针对语言优先级
1
airyland 2017-04-21 18:47:39 +08:00 via iPhone
要求绑手机号然后使用第三方的账户风险鉴定接口
|
2
crab 2017-04-21 18:55:41 +08:00
第 1 验证码
第 2 IP 限制 第 3 不管用户有没有成功,都响应成功。 |
3
geelaw 2017-04-21 18:57:29 +08:00
为啥用户不能开个浏览器然后 fire up his console and run the f**king code in JS ?
要防刷单,不能从前端难以进攻的角度防,要从后端验证的角度。 |
4
tinyproxy 2017-04-21 19:48:50 +08:00 via iPhone
你需要反欺诈服务。再说了,实在不行我直接拿浏览器跑恶心你成本也很低啊
|
5
popkara 2017-04-22 00:09:22 +08:00
楼上说的对,这个已经有很成熟的方案了,自己搞麻烦不说还效果不好。
|