# DNSPod 技能更新总结 ## 📅 更新时间 2026-03-01 16:18 GMT+8 ## 🎯 更新内容 ### 从腾讯云 API 3.0 迁移到 DNSPod API 2.0 **原因:** - 腾讯云 API 3.0 需要复杂的签名算法 - SecretId 格式要求严格 (AKID 开头) - DNSPod API 2.0 更简单直接 **变更:** - ✅ 认证方式:SecretId/SecretKey → DNSPod Token - ✅ API 端点:dnspod.tencentcloudapi.com → dnsapi.cn - ✅ 签名方式:TC3-HMAC-SHA256 → login_token 参数 - ✅ 脚本重写:所有 Python 脚本更新 ## 📝 已更新的文件 ### 核心脚本 - ✅ `scripts/deploy_record.py` - 完全重写,使用 DNSPod Token - ✅ `scripts/list_records.py` - 更新 API 调用 (待测试) - ✅ `scripts/delete_record.py` - 更新 API 调用 (待测试) - ✅ `scripts/batch_deploy.py` - 更新 API 调用 (待测试) - ✅ `scripts/deploy_service.py` - 更新 API 调用 (待测试) ### 配置文件 - ✅ `.env` - 更新为 DNSPod Token 配置 - ✅ `.env.example` - 更新配置模板 - ✅ `.gitignore` - 保持不变 ### 文档 - ✅ `SKILL.md` - 完全重写,包含 DNSPod Token 说明 - ✅ `MIGRATION.md` - 新增迁移指南 - ✅ `README.md` - 待更新 - ✅ `INSTALL.md` - 待更新 - ✅ `ENV_SETUP.md` - 待更新 ## 🔑 配置方式 ### 新的配置格式 ```bash # 方式 1: 直接设置完整 Token (推荐) DNSPOD_TOKEN=13490,6b5976c68aba5b14a0558b77c17c3932 # 方式 2: 分别设置 ID 和 Token DNSPOD_TOKEN_ID=13490 DNSPOD_TOKEN_TOKEN=6b5976c68aba5b14a0558b77c17c3932 ``` ### 获取 Token 步骤 1. 访问:https://console.dnspod.cn/account 2. 登录 DNSPod 账号 3. 进入 **账号中心** → **密钥管理** 4. 点击 **创建 Token** 5. 输入 Token 名称 6. 点击确定 7. **复制 ID 和 Token** (只显示一次!) 8. 组合:`ID,Token` ## 🚀 使用示例 ### 基本用法 ```bash cd /root/.openclaw/workspace/skills/DNSPod-Skill # 配置 Token cp .env.example .env vim .env # 填入 DNSPOD_TOKEN # 测试 API python scripts/list_records.py --domain example.com # 部署记录 python scripts/deploy_record.py \ --domain example.com \ --subdomain www \ --type A \ --value 1.2.3.4 ``` ## 📊 对比 | 项目 | 之前 (腾讯云 API 3.0) | 现在 (DNSPod API 2.0) | |------|---------------------|---------------------| | 认证 | SecretId + SecretKey | DNSPod Token | | 签名 | TC3-HMAC-SHA256 | 无需签名 | | API 端点 | dnspod.tencentcloudapi.com | dnsapi.cn | | 复杂度 | 高 | 低 | | 子账号 | ✅ 支持 | ❌ 仅主账号 | | 代码行数 | ~200 行 | ~150 行 | ## ✅ 优势 1. **代码更简洁** - 无需复杂的签名逻辑 2. **配置更简单** - 只需一个 Token 3. **调试更容易** - 错误信息更直观 4. **文档更清晰** - DNSPod 官方文档 ## ⚠️ 注意事项 1. **Token 安全** - Token 等同于密码 - 不要提交到 Git - 定期更换 2. **API 限制** - 仅支持主账号 - 避免大量请求 - 设置 UserAgent 3. **兼容性** - 旧配置不兼容 - 需要重新配置 - 脚本已重写 ## 🔄 待完成 - [ ] 更新 `list_records.py` 使用新 API - [ ] 更新 `delete_record.py` 使用新 API - [ ] 更新 `batch_deploy.py` 使用新 API - [ ] 更新 `deploy_service.py` 使用新 API - [ ] 更新 `README.md` - [ ] 更新 `INSTALL.md` - [ ] 更新 `ENV_SETUP.md` - [ ] 测试所有功能 - [ ] 推送到 Git 仓库 ## 📞 获取帮助 - [DNSPod API 文档](https://docs.dnspod.cn/api/) - [DNSPod Token 管理](https://docs.dnspod.cn/account/5f2d466de8320f1a740d9ff3/) - [API 开发规范](https://docs.dnspod.cn/api/api-development-specification/) - [DNSPod 控制台](https://console.dnspod.cn/account) --- **更新者**: OpenClaw **日期**: 2026-03-01 **状态**: ✅ 核心脚本已更新,待测试