Files
dns-server/.trae/documents/plan_20251225_150849.md
2026-01-14 23:08:46 +08:00

52 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## 问题分析
当前DNS服务器的解析记录显示存在以下问题
1. 前端`logs.js`中使用了`console.log`来调试和显示解析记录
2. 需要确保API返回的解析记录是正确的JSON格式
3. 前端需要正确解析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显示解析记录
- 解析记录显示清晰、格式统一
- 支持各种情况下的解析记录提取
## 关键文件修改
1. **`dns/server.go`**:确保解析记录正确序列化
2. **`static/js/logs.js`**优化解析记录显示逻辑移除console.log代码