1.2 KiB
1.2 KiB
问题分析
当前服务器代码存在以下问题:
QueryLog结构体中只有部分字段有JSON标签- 缺少完整的JSON序列化支持,导致API返回的JSON格式不完整
- 需要确保所有字段都能正确序列化为JSON
解决方案
1. 完善QueryLog结构体的JSON标签
文件:dns/server.go
修改内容:
- 为
QueryLog结构体的所有字段添加正确的JSON标签 - 确保
Timestamp字段正确序列化为ISO格式时间 - 确保
Answers字段序列化为"answers"(小写)
2. 确保API返回完整的JSON数据
文件:http/server.go
修改内容:
- 检查
handleLogsQuery函数,确保返回完整的日志数据 - 确保日志查询API返回包含所有必要字段的JSON数据
3. 测试验证
步骤:
- 重启DNS服务器
- 使用API测试工具验证
/api/logs/query返回的JSON格式正确 - 确保所有字段都正确序列化
预期效果
- API返回的JSON数据包含所有日志字段
- 前端能够正确解析API返回的JSON数据
- 解析记录通过API查询方式显示,不再使用console.log
关键文件修改
dns/server.go:完善QueryLog结构体的JSON标签http/server.go:确保API返回完整的JSON数据