帳號登入、登出流程
阿新 • • 發佈:2020-08-16
一、密碼登入
1.客戶端提交使用者名稱(以手機號為例)、md5編碼後的密碼,以及手機號、登入平臺,如下所示:
{
"Phone": 12345678999,
"Region": 86,
"Password": xfdfewr45sdf
"platform": app
}
2.服端處理流程虛擬碼為:
// 1. 通過手機號去使用者手機號繫結表查詢是否存在對應的使用者 phoneUser = phoneUserModel.Get(req.phone, req.region) if phoneUser == nil { return "使用者不存在" } // 2.通過返回的userid再去使用者表查詢是否存在對應的記錄 userInfo = userModel.Get(user.userid) if userInfo == nil { return "使用者不存在" } // 3.驗證使用者登入密碼,將提交的密碼引數和使用者資訊中的鹽值相連,再做一次md5,與使用者表記錄中的密碼比較 if userInfo.password != Crypotopassword(req.password, userinfo.salt) { return "密碼錯誤" } // 4.生成登入token,返回給客戶端 token := GenToken(userinfo.userid) SaveToken(token, userinfo.userid, req.platform) // 服務端由userid和platform構造key儲存token