开发文档:ancdnflyuser 系列 API 请求

此文档总结了与 ancdnflyuser 相关的各个函数,包含了请求地址、协议、请求参数及其描述。


1. ancdnflyuser_TestLink 函数

请求地址:

  • 路径: /api-key
  • 协议: 根据 params["secure"] 决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
server_ipparams["server_ip"]字符串"192.168.1.1"服务器的 IP 地址
server_hostparams["server_host"]字符串"example.com"备用服务器的主机名
server_usernameparams["server_username"]字符串"your_api_key"API 用户名(用于身份验证)
server_passwordparams["server_password"]字符串"your_api_secret"API 密钥(用于身份验证)
secureparams["secure"]布尔值true / false指定请求使用 httpshttp 协议

返回参数:

  • status: 200
  • data: 包含 server_statusmsg,指示服务器状态及错误信息。

2. ancdnflyuser_CreateAccount 函数

请求地址:

  • 路径: /user-packages
  • 协议: 根据 params["secure"] 决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
billingcycleparams["billingcycle"]字符串"annually" / "monthly"账单周期,决定订阅时长的单位(年或月)
configoptionsparams["configoptions"]数组{"package": "basic"}配置选项,包含选择的套餐类型
domainparams["domain"]字符串"example.com"用户的域名
hostidparams["hostid"]整数123主机 ID,用于更新数据库中的用户信息

返回参数:

  • status: "success""error"
  • msg: 结果消息,成功或错误的描述

3. ancdnflyuser_TerminateAccount 函数

请求地址:

  • 路径: /user-packages/{username}

    • username 用于替代路径中的 {username},表示要终止的用户账户。
  • 协议: 根据 params["secure"] 决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
usernameparams["username"]字符串"user123"用户名,表示需要终止的账户
server_ipparams["server_ip"]字符串"192.168.1.1"服务器的 IP 地址
server_hostparams["server_host"]字符串"example.com"备用的服务器主机名
server_usernameparams["server_username"]字符串"your_api_key"API 用户名(用于身份验证)
server_passwordparams["server_password"]字符串"your_api_secret"API 密钥(用于身份验证)

返回参数:

  • status: "success""error"
  • msg: 结果消息,成功或错误的描述

4. ancdnflyuser_Renew 函数

请求地址:

  • 路径: /user-packages/{username}

    • username 用于替代路径中的 {username},表示要续费的用户账户。
  • 协议: 根据 params["secure"] 决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
billingcycleparams["billingcycle"]字符串"annually" / "monthly"账单周期,决定续费时长的单位(年或月)
usernameparams["username"]字符串"user123"用户名,表示需要续费的账户
server_ipparams["server_ip"]字符串"192.168.1.1"服务器的 IP 地址
server_hostparams["server_host"]字符串"example.com"备用的服务器主机名

返回参数:

  • status: "success""error"
  • msg: 结果消息,成功或错误的描述

5. ancdnflyuser_post 函数

请求地址:

  • 动态构建的 URL,包括路径 $path
  • 协议: 根据 params["secure"] 决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
postpost字符串"{...}"请求体,通常为 JSON 格式的数据
server_ipparams["server_ip"]字符串"192.168.1.1"服务器的 IP 地址
server_hostparams["server_host"]字符串"example.com"备用的服务器主机名
server_usernameparams["server_username"]字符串"your_api_key"API 用户名(用于身份验证)
server_passwordparams["server_password"]字符串"your_api_secret"API 密钥(用于身份验证)
portparams["port"]整数8080服务器端口(可选)

6. ancdnflyuser_get 函数

请求地址:

  • 动态构建的 URL,包括路径 $path
  • 协议: 根据 params["secure"] 决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
server_ipparams["server_ip"]字符串"192.168.1.1"服务器的 IP 地址
server_hostparams["server_host"]字符串"example.com"备用的服务器主机名
server_usernameparams["server_username"]字符串"your_api_key"API 用户名(用于身份验证)
server_passwordparams["server_password"]字符串"your_api_secret"API 密钥(用于身份验证)
portparams["port"]整数8080服务器端口(可选)

7. ancdnflyuser_del 函数

请求地址:

  • 动态构建的 URL,包括路径 $path
  • 协议: 根据 params["secure"] 决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
server_ipparams["server_ip"]字符串`"192.168.1.

1. ancdnflyuser_put 函数

请求地址:

  • 路径: 通过 $path 动态设置请求路径。
  • 协议: 根据 $params["secure"] 决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
server_ipparams["server_ip"]字符串"192.168.1.1"服务器的 IP 地址
server_hostparams["server_host"]字符串"example.com"备用的服务器主机名
server_usernameparams["server_username"]字符串"your_api_key"API 用户名(用于身份验证)
server_passwordparams["server_password"]字符串"your_api_secret"API 密钥(用于身份验证)
portparams["port"]字符串"8080"服务器端口号(可选)
postpost字符串"{...}"发送的请求体数据,通常为 JSON 格式的字符串

2. ancdnflyuser_l4zf 函数

请求地址:

  • 路径: /streams?user_package={username}

    • 使用 username$params["username"] 动态构建路径。

请求协议:

  • 根据 params["secure"] 来决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
usernameparams["username"]字符串"exampleuser"用户包的用户名,用于查询特定的流数据

3. ancdnflyuser_l4put 函数

请求地址:

  • 路径: /streams

请求协议:

  • 根据 params["secure"] 来决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
usernameparams["username"]字符串"exampleuser"用户包的用户名
typepost["type"]字符串"TCP"协议类型(例如 TCP)
src_portpost["src_port"]字符串"8080"源端口
dst_portpost["dst_port"]字符串"9090"目标端口
addresspost["address"]字符串"192.168.1.1"后端地址

4. ancdnflyuser_l4onancdnflyuser_l4off 函数

请求地址:

  • 路径: /streams

请求协议:

  • 根据 params["secure"] 来决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
idpost["id"]字符串"12345"流的 ID
enablepost["enable"]整数1(启用)或 0(禁用)启用或禁用流的状态

5. ancdnflyuser_l4del 函数

请求地址:

  • 路径: /streams/{id}

    • 使用 post["id"] 动态生成路径。

请求协议:

  • 根据 params["secure"] 来决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
idpost["id"]字符串"12345"要删除的流的 ID

6. ancdnflyuser_wzzs 函数

请求地址:

  • 路径: /certs?des={domain}

    • 使用 params["domain"] 动态构建路径。

请求协议:

  • 根据 params["secure"] 来决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
domainparams["domain"]字符串"example.com"用于查询证书的域名

7. ancdnflyuser_wzzsonancdnflyuser_wzzsoff 函数

请求地址:

  • 路径: /certs

请求协议:

  • 根据 params["secure"] 来决定使用 httphttps 协议。

请求参数:

参数名变量名类型示例值描述
idpost["id"]字符串"12345"证书的 ID
enablepost["enable"]整数1(启用)或 0(禁用)启用或禁用证书

1. 请求地址: /certs/{id}

  • 请求协议: DELETE

    参数名类型示例描述
    idstring"12345"证书的唯一标识符

2. 请求地址: /certs

  • 请求协议: POST

    参数名类型示例描述
    namestring"example_cert"证书的名称
    desstring"example.com"证书的描述,通常是证书所属的域名
    certstring"MIIBIjANBgkqh...=="证书内容(Base64编码)
    keystring"MIIBIjANBgkqh...=="证书私钥(Base64编码)
    typestring"custom"证书类型,可能的值包括 "custom"

3. 请求地址: /acls

  • 请求协议: GET

    参数名类型示例描述
    domainstring"example.com"ACL规则所属的域名,用于查询该域名的ACL设置

4. 请求地址: /acls

  • 请求协议: PUT

    参数名类型示例描述
    idstring"12345"ACL的唯一标识符
    enableinteger1启用/禁用ACL规则(1表示启用,0表示禁用)

5. 请求地址: /acls/{id}

  • 请求协议: DELETE

    参数名类型示例描述
    idstring"12345"要删除的ACL规则的ID

6. 请求地址: /acls

  • 请求协议: POST

    参数名类型示例描述
    namestring"acl_name"ACL规则的名称
    desstring"example.com"ACL规则的描述,通常为域名
    datastring"allow all"规则数据,通常为ACL规则定义
    default_actionstring"allow"默认动作,可能的值为 "allow""deny"

7. 请求地址: /streams/{id}

  • 请求协议: POST

    参数名类型示例描述
    listenarray[8080, 443]流量监听的端口列表

8. 请求地址: /streams/{id}

  • 请求协议: GET

    参数名类型示例描述

9. 请求地址: /streams/{id}

  • 请求协议: PUT

    参数名类型示例描述
    listenarray[8080, 443]流量监听的端口列表

10. 请求地址: /streams/{id}

  • 请求协议: PUT

    参数名类型示例描述
    proxy_protocolstring"PROXY""NONE"设置代理协议,可能的值包括 "PROXY""NONE"

11. 请求地址: /streams/{id}

  • 请求协议: PUT

    参数名类型示例描述
    balance_waystring"round_robin"负载均衡方式,可能的值包括 "round_robin""least_conn"

12. 请求地址: /streams/{id}

  • 请求协议: PUT

    参数名类型示例描述
    backend_portstring"8080"后端服务端口

13. 请求地址: /streams/{id}

  • 请求协议: PUT

    参数名类型示例描述
    backendstring"backend1"后端服务的名称或标识

14. 请求地址: /streams/{id}

  • 请求协议: PUT

    参数名类型示例描述
    conn_limitinteger1000设置最大连接数限制

15. 请求地址: /streams/{id}

  • 请求协议: PUT

    参数名类型示例描述
    aclobject{"default_action":"allow"}设置ACL规则,包含默认动作

16. 请求地址: /streams/{id}

  • 请求协议: PUT

    参数名类型示例描述
    aclobject{"rule":"allow all"}设置ACL规则的具体规则内容

17. 请求地址: /sites

  • 请求协议: GET

    参数名类型示例描述
    user_packagestring"user123"用户名,用于查询该用户的站点信息

18. 请求地址: /sites

  • 请求协议: PUT

    参数名类型示例描述
    idstring"12345"站点的唯一标识符
    enableinteger1启用/禁用站点(1表示启用,0表示禁用)

开发文档

1. 请求地址: /sites

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
user_packagestring"username"用户的唯一标识符,用于指定操作的用户。
domainstring"example.com"站点的域名。
http_listenobject{"port": "80"}HTTP监听端口设置。
backendarray[{"addr": "192.168.0.1"}]后端服务器的地址列表。
backend_http_portstring"8080"后端服务的HTTP端口。

2. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
domainstring"new-domain.com"更新后的域名。

3. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
http_listenobject{"port": "8080"}设置HTTP监听端口。

4. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
https_listenobject{"cert": "cert_id"}设置HTTPS监听配置,指定证书ID。

5. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
backend_protocolstring"HTTP""HTTPS"设置后端协议。

6. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
proxy_timeoutstring"30"设置代理超时时间(单位:秒)。

7. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
balance_waystring"round_robin"设置负载均衡方式。

8. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
backend_port_mappingarray[{"external": 80, "internal": 8080}]设置后端端口映射。

9. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
https_listenobject{"hsts": true}设置HTTPS配置中的HSTS选项。

10. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
https_listenobject{"http2": true}设置HTTPS配置中的HTTP/2协议选项。

11. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
https_listenobject{"force_ssl_enable": true}设置HTTPS配置中的强制SSL选项。

12. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
https_listenobject{"force_ssl_port": 443}设置HTTPS配置中的强制SSL端口。

13. 请求地址: /sites/{id}

  • 请求协议: PUT
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
https_listenobject{"ocsp_stapling": true}设置HTTPS配置中的OCSP stapling选项。

14. 请求地址: /sites/{id}

  • 请求协议: DELETE
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符,用于删除该站点。

15. 请求地址: /sites

  • 请求协议: GET
  • 请求参数:
参数名类型示例值描述
user_packagestring"username"用于查询该用户的站点信息。

16. 请求地址: /sites/{id}

  • 请求协议: POST
  • 请求参数:
参数名类型示例值描述
idstring"12345"站点的唯一标识符。
enableinteger0启用或禁用站点,1为启用,0为禁用。

开发文档

1. 请求地址

以下是不同功能所使用的请求地址:

  • /sites/{id}
  • /cc-rules?internal_self=1
  • /monitor/site/realtime

2. 请求协议

所有请求都使用 HTTP PUTHTTP GET 协议进行通信。

3. 请求参数

以下是各个功能中使用的请求参数表格:

请求功能请求地址请求协议请求参数字段变量名类型示例值描述
配置 SSL 参数/sites/{id}PUTssl_protocolsaString"TLSv1.2,TLSv1.3"SSL协议
ssl_ciphersbString"ECDHE-ECDSA-AES128-GCM-SHA256"SSL加密套件
ssl_prefer_server_cipherscBooleantrue是否优先使用服务器加密套件
配置代理缓存/sites/{id}PUTproxy_cachedataString"true"是否启用代理缓存
配置访问控制列表(ACL)/sites/{id}PUTacldataString"allow"访问控制列表
配置连接范围/sites/{id}PUTrangedataString"100-200"连接范围
配置后端主机/sites/{id}PUTbackend_hostdataString"backend.example.com"后端主机地址
配置代理 HTTP 版本/sites/{id}PUTproxy_http_versiondataString"1.1"代理的HTTP版本
配置保持连接/sites/{id}PUTups_keepalivedataBooleantrue是否启用保持连接
配置最大连接数/sites/{id}PUTups_keepalive_conndataInteger100最大保持连接数
配置CC规则/cc-rules?internal_self=1GETnonenonenonenone获取CC规则信息
配置阻止的地区/sites/{id}PUTblock_regiondataString"mn,kp,kr"阻止的地区
配置阻止代理/sites/{id}PUTblock_proxydataBooleantrue是否阻止代理
配置CC防护规则/sites/{id}PUTcc_default_ruledataString"enable"CC防护规则
配置黑名单 IP/sites/{id}PUTblack_ipdataString"192.168.1.1"黑名单IP
配置白名单 IP/sites/{id}PUTwhite_ipdataString"192.168.1.2"白名单IP
配置自动CC防护模式/sites/{id}PUTcc_switch.rulemodString"time_rule"CC防护规则模式
cc_switch.switchtimeInteger30CC防护规则生效时间(秒)
配置SSL实时监控/monitor/site/realtimeGETtypetypeString"ssl"查询类型
startstart_timeString"2024-12-12 10:00:00"查询开始时间
endend_timeString"2024-12-12 11:00:00"查询结束时间
domaindomainString"example.com"查询的域名

4. 请求参数说明

每个功能通过相应的接口进行数据的更新和查询。每个请求都包含特定的请求体或查询参数,具体的字段和说明如下:

  • ssl_protocols:指定SSL协议版本,如TLSv1.2,TLSv1.3
  • ssl_ciphers:指定SSL加密套件,如ECDHE-ECDSA-AES128-GCM-SHA256
  • ssl_prefer_server_ciphers:是否优先使用服务器端加密套件,布尔值。
  • proxy_cache:是否启用代理缓存,布尔值。
  • acl:配置访问控制列表,如allow
  • range:指定连接的范围,如100-200
  • backend_host:配置后端主机地址,如backend.example.com
  • proxy_http_version:配置代理的HTTP版本,如1.1
  • ups_keepalive:是否启用保持连接,布尔值。
  • ups_keepalive_conn:最大保持连接数,整数。
  • block_region:配置阻止的地区,如mn,kp,kr
  • block_proxy:是否阻止代理,布尔值。
  • cc_default_rule:配置CC防护规则,如enable
  • black_ip:配置黑名单IP,如192.168.1.1
  • white_ip:配置白名单IP,如192.168.1.2
  • cc_switch.rule:配置CC防护规则模式,如time_rule
  • cc_switch.switch:设置CC防护规则生效的时间,单位秒。
  • type:查询类型,如ssl
  • start:查询的开始时间。
  • end:查询的结束时间。
  • domain:查询的域名。

    开发文档

本文档总结了多个函数中涉及的API请求地址、请求协议、请求参数以及相应的字段描述。我们将重点列出每个API的请求地址、请求参数和对应的字段信息。

API 请求地址和协议

请求地址请求协议描述
/sites/{id}PUT设置或更新站点相关配置
/monitor/usageGET获取站点监控数据
/dnsapisGET获取DNSAPI配置信息
/dnsapis/{id}DELETE删除指定的DNSAPI配置
/cc-matchsGET获取CC攻击匹配器配置
/cc-matchsPUT更新CC攻击匹配器配置
/cc-filtersGET获取CC过滤器配置
/cc-filtersPUT更新CC过滤器配置
/certsPOST创建SSL证书配置

请求参数说明

以下是各个API的请求参数及其字段说明:

1. /sites/{id} (PUT 请求)

请求参数表格

字段名变量名类型示例值描述
ididint12345站点的唯一标识符
datadatastring"1"启用或禁用相关功能,值为 "1" 或 "0"
gzip_enablegzip_enablestring"1"启用或禁用Gzip压缩功能
websocket_enablewebsocket_enablestring"1"启用或禁用WebSocket功能

2. /monitor/usage (GET 请求)

请求参数表格

字段名变量名类型示例值描述
catecatestring"site"监控类别
typetypestring"bandwidth"监控类型,可能的值有 "bandwidth" 或 "requests"
startstartstring"2024-12-01"监控数据起始日期
endendstring"2024-12-02"监控数据结束日期
resresstring"example.com"需要监控的域名
user_packageuser_packagestring"basic"用户的套餐类型

3. /dnsapis (GET 请求)

请求参数表格

字段名变量名类型示例值描述
domaindomainstring"example.com"要查询的域名

4. /dnsapis/{id} (DELETE 请求)

请求参数表格

字段名变量名类型示例值描述
ididint12345要删除的DNSAPI的唯一标识符

5. /cc-matchs (GET 请求)

请求参数表格

字段名变量名类型示例值描述
internal_selfinternal_selfint1是否为内置的匹配器配置,值为 "1"

6. /cc-matchs (PUT 请求)

请求参数表格

字段名变量名类型示例值描述
ididint12345匹配器的唯一标识符
enableenableint1启用或禁用匹配器,值为 "1" 或 "0"

7. /cc-filters (GET 请求)

请求参数表格

字段名变量名类型示例值描述
internal_selfinternal_selfint1是否为内置的过滤器配置,值为 "1"

8. /cc-filters (PUT 请求)

请求参数表格

字段名变量名类型示例值描述
ididint12345过滤器的唯一标识符
enableenableint1启用或禁用过滤器,值为 "1" 或 "0"

9. /certs (POST 请求)

请求参数表格

字段名变量名类型示例值描述
namenamestring"example.com"证书名称
desdesstring"example.com"证书描述
dnsapidnsapistring"dnsapi_id"使用的DNSAPI标识符
domaindomainstring"example.com"证书对应的域名
typetypestring"ssl"证书类型

返回结果说明

对于所有API,返回结果的结构大致相同,包含以下字段:

字段名变量名类型描述
codecodeint请求的返回码,0 表示成功,其他值表示失败
msgmsgstring返回的消息,通常为 "error" 或成功的提示信息

以上表格和描述总结了在开发过程中涉及的API及请求参数的详细信息。

开发文档

本文档总结了多个函数中涉及的API请求地址、请求协议、请求参数以及相关字段的描述。每个API请求都有其对应的请求地址、协议、参数及其详细说明。

请求地址和协议

请求地址请求协议描述
/cc-filtersPOST用于创建或更新CC过滤规则
/cc-rulesGET获取当前的CC规则列表
/cc-rulesPUT更新CC规则状态(启用/禁用)
/cc-rules/{id}DELETE删除指定的CC规则
/jobsPOST创建后台任务,如清理目录任务

请求参数说明

以下是各个API请求的参数说明及其详细描述:

1. /cc-filters (POST 请求)

请求参数表格

字段名变量名类型示例值描述
namenamestring"filter_name"过滤规则的名称
desdesstring"example.com"过滤规则描述
typetypestring"rate_limit"规则类型,可能的值有 "rate_limit" 等
within_secondwithin_secondint60每分钟最大请求次数(限制请求的时间窗口)
max_reqmax_reqint1000最大请求次数
max_req_per_urimax_req_per_uriint0每个URI最大请求次数
extraextraobject{}额外的自定义配置

2. /cc-rules (GET 请求)

请求参数表格

字段名变量名类型示例值描述
internal_selfinternal_selfint1是否为内置规则,1表示是

3. /cc-rules (PUT 请求)

请求参数表格

字段名变量名类型示例值描述
ididint12345要更新的规则的ID
enableenableint1启用或禁用该规则,1表示启用

4. /cc-rules/{id} (DELETE 请求)

请求参数表格

字段名变量名类型示例值描述
ididint12345要删除的规则的ID

5. /jobs (POST 请求)

请求参数表格

字段名变量名类型示例值描述
typetypestring"clean_dir"作业类型,"clean_dir"表示清理目录
datadataobject{"url": "example.com"}作业的相关数据,指定要清理的URL

返回结果说明

所有API的返回结果结构大致相同,包含以下字段:

字段名变量名类型描述
codecodeint返回码,0表示成功,其他值表示失败
msgmsgstring返回的消息,通常为 "error" 或成功的提示信息