This commit is contained in:
Alex Yang
2026-01-16 11:09:11 +08:00
parent 8159577be0
commit cdac4fcf43
284 changed files with 2813570 additions and 14 deletions

View File

@@ -0,0 +1,52 @@
## 问题分析
当前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代码