API 概述
该API接口提供襄阳防火墙攻击记录查询功能,允许用户查询指定服务器IP的最近一个月攻击日志记录,包括攻击源、攻击类型、持续时间等详细信息。
接口支持两种请求方式(GET和POST),并返回JSON格式的响应数据,包含操作结果状态码和相关攻击记录信息。必须指定单个服务器IP才能查询。
实时查询
安全认证
跨域支持
接口详情
GET/POST
请求参数
参数名 | 类型 | 是否必需 | 说明 |
---|---|---|---|
server_ip
|
字符串 | 必需 | 服务器IP地址(必须提供) |
系统会自动查询该IP最近一个月的攻击记录,无需指定时间范围
|
响应示例
成功响应
{ "code": 0, "msg": "查询成功", "data": [ { "count": 14131, "status": 0, "deftype": "全局过滤模块:syn flood", "s_ip": "30.0.0.10", "start_time": "2022-11-10 18:04:41", "drop_count": 14131, "s_port_list": "80", "c_port_list": "2240,6371", "c_ip_list": "200.0.1.116,200.0.2.253", "packet_type": "TCP_SYN", "end_time": "2022-11-10 18:05:22", "duration": "41seconds", "drop_size": 7517692, "id": 68, "size": 7517692 } ] }
失败响应
{ "code": -1, "msg": "查询攻击记录失败" }
参数说明
{ "count": 峰值包数 "status": 攻击状态 1:正在攻击 0:攻击结束 "deftype": 防护方式 "s_ip": 服务器IP "start_time": 攻击起始时间 "drop_count": 拦截包数 "s_port_list": 目的端口 "c_port_list": 源端口 "c_ip_list": 攻击源IP "packet_type": 包类型 "end_time": 攻击结束时间 "duration": 持续时间:seconds(秒) minutes(分钟) hours(小时) days(天) "drop_size": 拦截峰值流量 单位字节 "id": 本次攻击日志id值,唯一标识 "size": 服务器峰值流量 单位字节 }
使用示例
PHP 示例代码
<?php // 服务器IP(必须提供) $serverIp = "需要查询的服务器IP"; // 构建API请求URL $apiUrl = "https://gb.qixidc.cn/xy/gj.php?api=1" . "&server_ip=" . urlencode($serverIp); // 发送请求 $response = file_get_contents($apiUrl); $result = json_decode($response, true); // 处理响应 if ($result && $result['code'] == 0) { echo "查询成功: " . $result['msg'] . "\n"; echo "攻击记录数量: " . count($result['data']) . "\n"; // 遍历攻击记录 foreach ($result['data'] as $attack) { echo "攻击ID: " . $attack['id'] . "\n"; echo "攻击类型: " . $attack['deftype'] . "\n"; echo "攻击源IP: " . $attack['c_ip_list'] . "\n"; echo "开始时间: " . $attack['start_time'] . "\n"; echo "持续时间: " . $attack['duration'] . "\n"; echo "-------------------------\n"; } } else { echo "错误: " . ($result['msg'] ?? '未知错误'); } ?>
错误代码说明
0 - 成功
查询攻击记录成功
-1 - 查询失败
查询攻击记录过程中出现错误
401 - 缺少IP参数
请求中缺少必须的server_ip参数
402 - IP格式无效
提供的服务器IP地址格式不正确
500 - 服务器内部错误
服务器处理请求时发生错误