fix(用户绑定): 优化邮箱绑定逻辑并完善设备绑定功能
Build docker and publish / build (20.15.1) (push) Successful in 7m39s

修复绑定相同邮箱时的错误提示问题,允许重复绑定相同邮箱
重构设备绑定逻辑,增加详细注释和日志记录
移除无用的WebSocket测试端点
更新测试脚本中的默认配置和测试用例
This commit is contained in:
2025-10-23 04:11:02 -07:00
parent bafeaa35cd
commit 38655c0d38
8 changed files with 225 additions and 61 deletions
+14
View File
@@ -0,0 +1,14 @@
已经绑定过的设备,删除重装,这个时候绑定邮箱用哪个接口
删除重新装: 设备号不变, 现在拿着设备登录;实际上还是老的 邮箱+设备
1. 该设备已经绑定过邮箱了; 没办法进行绑定 需要解绑后再次绑定
这个场景 如果走 绑定邮箱 需要先解绑 再调用 bind_email_with_password
如果直接走登录: /v1/auth/login;
新设备,未绑定邮箱,用哪个接口
bind_email_with_password
+31 -1
View File
@@ -173,7 +173,7 @@ func bindEmailWithPassword(serverURL, secret, token, email, password, userAgent
func main() {
secret := "c0qhq99a-nq8h-ropg-wrlc-ezj4dlkxqpzx"
serverURL := "http://localhost:8080"
identifier := "AP4A.241205.014"
identifier := "AP4A.241205.013"
userAgent := "ppanel-go-test/1.0"
plain := map[string]interface{}{
@@ -237,3 +237,33 @@ func main() {
fmt.Println("跳过绑定:缺少 token、EMAIL 或 PASSWORD")
}
}
/*
测试 1:
设备A AP4A.241205.017 3节点
邮箱B client05@gmail.com 无套餐
设备A 绑定 邮箱B
结果:
设备A 设备A 没有套餐了
邮箱B: 套餐到了 邮箱B的体系下 设备也和邮箱绑定上了
以邮箱为主;
测试 2:
设备A AP4A.241205.018 无套餐
邮箱B client06@gmail.com 3节点
设备A 绑定 邮箱B
结果:
设备A 设备A 没有套餐了
邮箱B: 原有套餐还存在 设备也和邮箱绑定上了
以邮箱为主;
测试 3:
设备A AP4A.241205.019 3节点 2025/11/2 13:12:21 2025/10/23 13:12:21
邮箱B client07@gmail.com day套餐
设备A 绑定 邮箱B
结果:
设备A 设备A 没有套餐了
邮箱B: 原有套餐还存在 设备也和邮箱绑定上了
以邮箱为主;
*/
+1 -1
View File
@@ -13,7 +13,7 @@ import (
func main() {
// 默认配置,可用环境变量覆盖
baseURL := getenvDefault("SERVER_URL", "ws://127.0.0.1:8080")
baseURL := getenvDefault("SERVER_URL", "wss://api.hifast.biz")
userID := getenvDefault("USER_ID", "23")
deviceID := getenvDefault("DEVICE_ID", "c76463cff8512722")
auth := "dkjw6TCQTBlgreyhjN8u32gP0A6RrQ/V50vf8wjNFwFL9hgKJrOOv+ziS03GCQ/8E0fWUzjc4aCoMcVMzUN8vR7CwqR45HbtogoT9iNoElW9rgzpQNbwQ4BHK/Q25WvcgdrhfRzE19nPqUTOcN+4iY6NmeiwHEMLBTzDEeu8wGn/yjVLRMCyh5QJuQizllbrDR5LuTiNEcdSdBSx9cFZYtnJIIyi1b60BZYo4lIyRADCH6smTsLDhoZG0nJvJw3C0XCGvf0jC/4d4u40IvbzKOm1TBSK0lgOzNjvkSfS/DJibAi4l7qNTYmFlQ1wp+iW1MNllqd+OtSavZYoajoZGA=="