# 🌐 小程序域名配置指南 ## 🚨 问题现象 小程序中调用天行数据API时,控制台显示: ``` 📡 API响应状态: undefined 📡 API响应数据: undefined ``` ## 🔍 问题原因 微信小程序有严格的网络安全限制,需要在小程序后台配置合法域名白名单。 ## 🔧 解决方案 ### 1. 登录微信小程序后台 1. 访问 [微信公众平台](https://mp.weixin.qq.com/) 2. 使用小程序账号登录 ### 2. 配置服务器域名 1. **进入设置页面**:开发 → 开发管理 → 开发设置 2. **找到服务器域名**:向下滚动到"服务器域名"部分 3. **配置request合法域名**: ``` https://apis.tianapi.com ``` ### 3. 配置步骤详解 1. **点击"修改"按钮** 2. **在"request合法域名"中添加**: ``` https://apis.tianapi.com ``` 3. **点击"保存并提交"** 4. **等待审核通过**(通常几分钟内生效) ### 4. 开发阶段临时解决方案 如果暂时无法配置域名白名单,可以在开发工具中: 1. **微信开发者工具**: - 详情 → 本地设置 → 不校验合法域名、web-view... - ✅ 勾选这个选项 2. **HBuilderX + 微信开发者工具**: - 在 `manifest.json` 中设置: ```json "mp-weixin": { "setting": { "urlCheck": false } } ``` ### 5. 验证配置 配置成功后,重新测试星座功能,控制台应该显示: ``` 📡 API响应状态: 200 📡 API响应数据: {code: 200, msg: "success", result: {...}} ✅ 成功获取API星座运势数据 ``` ## 📋 完整域名列表 如果你的项目还使用了其他API,可能需要配置这些域名: ``` https://apis.tianapi.com # 天行数据主域名 https://api.tianapi.com # 天行数据备用域名 https://www.tianapi.com # 官网域名(如果需要) ``` ## ⚠️ 注意事项 ### 1. 域名限制 - 每个小程序最多配置 **100个** request合法域名 - 域名必须是 **https** 协议 - 不支持 IP 地址和端口号 ### 2. 生效时间 - 配置后通常 **几分钟内** 生效 - 如果没有生效,可以尝试: - 清除小程序缓存 - 重新编译项目 - 重启微信开发者工具 ### 3. 审核要求 - 域名必须已备案 - 域名证书必须有效 - 不能是测试或开发域名 ## 🔄 备选方案 如果无法配置域名白名单,可以考虑: ### 1. 使用云函数代理 ```javascript // 在云函数中调用第三方API exports.main = async (event) => { const response = await axios.get('https://apis.tianapi.com/star/index', { params: event.params }) return response.data } ``` ### 2. 使用自己的服务器代理 ```javascript // 在你的服务器上创建代理接口 app.get('/api/constellation', (req, res) => { // 转发请求到天行数据API axios.get('https://apis.tianapi.com/star/index', { params: req.query }).then(response => { res.json(response.data) }) }) ``` ## 🎯 测试验证 配置完成后,使用以下步骤验证: 1. **重新编译小程序** 2. **清除缓存和数据** 3. **测试星座功能** 4. **检查控制台输出** 成功的控制台输出应该是: ``` 🔍 尝试调用天行数据星座运势API 📡 API请求地址: https://apis.tianapi.com/star/index 📡 API响应状态: 200 ✅ 成功获取API星座运势数据 ✅ 使用API星座运势数据 ``` ## 📞 常见问题 ### Q: 配置域名后仍然无法访问? A: 检查域名是否正确,确保使用 https 协议,等待几分钟让配置生效。 ### Q: 开发工具中可以访问,真机上不行? A: 真机严格校验域名白名单,必须在小程序后台正确配置。 ### Q: API Key 是否有效? A: 可以先在天行数据官网的在线测试中验证 API Key 是否可用。 --- **🌟 配置完成后,你的小程序就能正常调用天行数据API获取专业的星座运势数据了!**