CDNHAO使用文档

获取过滤器列表

GET /v1/cc-filters
pageinteger
当前页码
limitinteger
单页显示数量
internal_selfinteger
置为1时显示内置及自己的过滤器
internalinteger
置为1时,只显示内置过滤器
enableboolean
显示禁用或启用的过滤器
{
    "code": 0,
    "count": 1,
    "data": [
        {
            "c.uid": 2,
            "create_at": null,
            "create_at2": "2021-11-25 14:36:29",
            "des": "",
            "enable": 1,
            "extra": "{}",
            "id": 10021,
            "internal": 0,
            "max_req": 5,
            "max_req_per_uri": 0,
            "name": "验证码",
            "state": null,
            "task_id": null,
            "type": "captcha_filter",
            "uid": 2,
            "update_at": null,
            "update_at2": "2021-11-25 14:36:29",
            "username": "jason",
            "version": 1,
            "within_second": 60
        }
    ]
}

新增过滤器

POST /v1/cc-filters
namestring
required过滤器名称
des
备注
type
required类型,可选为req_rate、302_challenge、browser_verify_auto、slide_filter、captcha_filter、click_filter、url_auth、delay_jump_filter
within_secondinteger
required在指定的秒数下统计
max_reqinteger
required在within_second秒数内最大请求数
max_req_per_uri
统计同一个uri请求的次数。当类型为req_rate时,才需要填写。
extrajson
此字段为json类型,用于设置url鉴权。当类型为url_auth时才需要填写。当键值mode为TypeA时,需要提供key、sign_name、time_name、time_diff、sign_use_times;当mode为TypeB时,需要提供key、sign_name、time_diff、sign_use_times。key为密钥,sign_name为sign的参数数,time_name为time的参数名,time_diff为相当的时间,sign_use_times为签名可以用的次数。
{
  "code": 0, 
  "data": "1", 
  "msg": "过滤器添加成功"
}
{
	"name": "5秒验证",
	"des": "",
	"type": "delay_jump_filter",
	"within_second": "60",
	"max_req": "5",
	"max_req_per_uri": "",
	"extra": {}
}

批量修改过滤器 (数据格式为数组)

PUT /v1/cc-filters
idinteger
过滤器ID
namestring
过滤器名称
des
备注
type
类型,可选为req_rate、302_challenge、browser_verify_auto、slide_filter、captcha_filter、click_filter、url_auth、delay_jump_filter
within_secondinteger
在指定的秒数下统计
max_reqinteger
在within_second秒数内最大请求数
max_req_per_uri
统计同一个uri请求的次数。当类型为req_rate时,才需要填写。
extrajson
此字段为json类型,用于设置url鉴权。当类型为url_auth时才需要填写。当键值mode为TypeA时,需要提供key、sign_name、time_name、time_diff、sign_use_times;当mode为TypeB时,需要提供key、sign_name、time_diff、sign_use_times。key为密钥,sign_name为sign的参数数,time_name为time的参数名,time_diff为相当的时间,sign_use_times为签名可以用的次数。
{
  "code": 0, 
  "data": "", 
  "msg": "更新过滤器成功"
}
[{
	"id": 1,
	"enable": 0
}, {
	"id": 2,
	"enable": 0
}]

获取单个过滤器

GET /v1/cc-filters/<过滤器ID>
{
    "code": 0,
    "data": {
        "create_at": null,
        "des": "",
        "enable": 1,
        "extra": "{}",
        "id": 10021,
        "internal": 0,
        "max_req": 5,
        "max_req_per_uri": 0,
        "name": "验证码",
        "task_id": null,
        "type": "captcha_filter",
        "uid": 2,
        "update_at": null,
        "version": 1,
        "within_second": 60
    },
    "msg": ""
}

修改单个过滤器

PUT /v1/cc-filters/<过滤器ID>
namestring
过滤器名称
des
备注
type
类型,可选为req_rate、302_challenge、browser_verify_auto、slide_filter、captcha_filter、click_filter、url_auth、delay_jump_filter
within_secondinteger
在指定的秒数下统计
max_reqinteger
在within_second秒数内最大请求数
max_req_per_uri
统计同一个uri请求的次数。当类型为req_rate时,才需要填写。
extrajson
此字段为json类型,用于设置url鉴权。当类型为url_auth时才需要填写。当键值mode为TypeA时,需要提供key、sign_name、time_name、time_diff、sign_use_times;当mode为TypeB时,需要提供key、sign_name、time_diff、sign_use_times。key为密钥,sign_name为sign的参数数,time_name为time的参数名,time_diff为相当的时间,sign_use_times为签名可以用的次数。
{
  "code": 0, 
  "data": "", 
  "msg": "更新过滤器成功"
}
{
  "name": "新名称", 
}

删除过滤器

DELETE /v1/cc-filters/<过滤器ID,多个以逗号分隔>
{
  "code": 0, 
  "data": "", 
  "msg": "过滤器删除成功"
}