您现在的位置是:首页 > 文章详情

kk-anti-reptile 1.0.0-RELEASE 版本发布,反爬虫组件

日期:2020-02-11点击:483

1.0.0-RELEASE版本发布内容

  1. 优化:验证及刷新请求不使用Filter处理,改为使用原生servlet,不影响正常请求效率
  2. 优化:底层拦截原理改进,由filter改成spring体系的Interceptor,方便后续Spring mvc对接支持
  3. 新增:新增全局拦截模式可选,默认为非全局拦截
  4. 新增:新增拦截模式配置不当时智能提示
  5. 新增:新增 @AntiReptile 注解标注接口拦截支持,注解和配置文件方式可同时作用
  6. 新增:新增接口正则表达式匹配拦截支持

 kk-anti-reptile反爬虫组件简介

概述

kk-anti-reptile 是适用于基于 spring-boot 开发的分布式系统的开源反爬虫接口防刷spring boot start组件。

系统要求

  • 基于 spring-boot 开发(spring-boot1.x, spring-boot2.x 均可)
  • 需要使用 redis

工作流程

kk-anti-reptile 使用 SpringMVC拦截器 对请求进行过滤,通过 spring-boot 的扩展点机制,实例化一个Spring HandlerInterceptor Bean,通过 Spring 注入到 Servlet 容器中,从而实现对请求的过滤

在 kk-anti-reptile 的过滤 Interceptor 内部,又通过责任链模式,将各种不同的过滤规则织入,并提供抽象接口,可由调用方进行规则扩展

Interceptor 调用则链进行请求过滤,如过滤不通过,则拦截请求,返回状态码509,并输出验证码输入页面,输出验证码正确后,调用过滤规则链对规则进行重置

目前规则链中有如下两个规则

ip-rule

ip-rule 通过时间窗口统计当前时间窗口内请求数,小于规定的最大请求数则可通过,否则不通过。时间窗口、最大请求数、ip 白名单等均可配置

ua-rule

ua-rule 通过判断请求携带的 User-Agent,得到操作系统、设备信息、浏览器信息等,可配置各种维度对请求进行过滤

原文链接:https://www.oschina.net/news/113306/kk-anti-reptile-1-0-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章