开发者社区> 问答> 正文

如何防止接口被刷

比如:一个注册页面,如何防止别人调用接口直接注册很多个用户。
我想到的有
1.注册的时候,需要手机验证码
2.IP次数限制,具体设置多少合适

展开
收起
蛮大人123 2016-03-10 19:23:26 4089 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    首先你的目的是防止注册接口被刷而导致被注册大量无用的账号,这个问题可以通过提高注册门槛的方式来解决,如你提到的使用手机验证码,但是注册门槛提高必然会导致注册率降低,这是需要取舍的。
    其他技术方面的如果只是想简单的起到一个过滤作用那么IP限制也是可以的,但是你需要知道的是Http协议中的IP除了remoteAddress是不可伪造之后,其他的如X-Forwarded-For等都是可以直接伪造的。
    再者一个最简单的方法就是验证码,这是个非常高效的方法,当然也并非绝对可用。
    其实你要解决的问题只有一个:如何唯一标识一个客户端,在Http协议下是很难做到的。如果解决不了这个问题就尝试着解决另一个问题:如何增加程序调用接口的复杂度,如在调用接口之前增加一些token的获取,增加接口调用的流程等等。

    2019-07-17 18:58:12
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载