1.6 KiB
1.6 KiB
问题分析
当前DNS服务器的解析记录显示存在以下问题:
- 前端
logs.js中使用了console.log来调试和显示解析记录 - 需要确保API返回的解析记录是正确的JSON格式
- 前端需要正确解析API返回的JSON数据来显示解析记录
解决方案
1. 优化API返回格式
文件:dns/server.go
修改内容:
- 确保
QueryLog结构体的Answers字段正确序列化为JSON - 检查
DNSAnswer结构体的JSON标签是否正确
2. 清理前端console.log代码
文件:static/js/logs.js
修改内容:
- 删除或注释掉第1047、1054行等console.log调试代码
- 优化解析记录提取逻辑,确保正确处理API返回的JSON数据
3. 优化解析记录显示逻辑
文件:static/js/logs.js
修改内容:
- 完善
extractDNSRecords函数,确保正确处理各种格式的解析记录 - 优化解析记录的HTML渲染逻辑,确保显示格式清晰
- 确保支持
log.answers字段(小写)和log.Answers字段(大写)
4. 测试验证
步骤:
- 重启DNS服务器
- 使用API测试工具验证
/api/logs/query返回的解析记录格式正确 - 测试前端页面解析记录显示正常
预期效果
- API返回的解析记录格式为标准JSON
- 前端页面不再使用console.log显示解析记录
- 解析记录显示清晰、格式统一
- 支持各种情况下的解析记录提取
关键文件修改
dns/server.go:确保解析记录正确序列化static/js/logs.js:优化解析记录显示逻辑,移除console.log代码