You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
107 lines
2.5 KiB
107 lines
2.5 KiB
import { HTTP, Method, HTTPConst } from '../utils/http.js'
|
|
|
|
const AuthConst = {
|
|
token_url: '/api/user/getToken', // 获取token
|
|
check_register_url: '/api/miniuser/isRegister',
|
|
mobile_code_url: '/api/miniuser/getSmsCode', // 获取验证码
|
|
verify_update_phone_url: '/api/miniuser/updateMiniUser' // mobile 验证
|
|
}
|
|
class AuthModel extends HTTP {
|
|
constructor() {
|
|
super()
|
|
}
|
|
// 获取短信验证码
|
|
getMsgCode (phone, success) {
|
|
let params = {
|
|
url: AuthConst.mobile_code_url,
|
|
method: Method.GET,
|
|
data: {
|
|
phone: phone,
|
|
},
|
|
success: (data)=> {
|
|
wx.showToast({
|
|
title: '短信验证码已发送!',
|
|
icon: 'none'
|
|
})
|
|
success(data)
|
|
}
|
|
}
|
|
this.request(params)
|
|
}
|
|
checkRegister (success) {
|
|
let params = {
|
|
url: AuthConst.check_register_url,
|
|
method: Method.POST,
|
|
success: success,
|
|
}
|
|
this.request(params)
|
|
}
|
|
// 提交验证和注册
|
|
mobileRegister (phone, name, vscode, success) {
|
|
let params = {
|
|
url: AuthConst.verify_update_phone_url,
|
|
method: Method.POST,
|
|
data: {
|
|
isRegister: 1,
|
|
phone: phone,
|
|
realName: name,
|
|
verificationCode: vscode,
|
|
},
|
|
success: (data) => {
|
|
console.log(data)
|
|
if (data) {
|
|
success(data)
|
|
} else {
|
|
wx.showToast({
|
|
title: '注册失败',
|
|
icon: 'none'
|
|
})
|
|
console.log('注册失败')
|
|
}
|
|
}
|
|
}
|
|
this.request(params)
|
|
}
|
|
// 获取 Token
|
|
fetchAuthToken(success) {
|
|
// 获取token
|
|
this._fetchWXCode().then(res => {
|
|
if (!res) return
|
|
let params = {
|
|
url: AuthConst.token_url,
|
|
method: Method.GET,
|
|
data: {
|
|
code: res
|
|
},
|
|
success: (data) => {
|
|
// 将获取到的token存放起来
|
|
let token = 'test token'
|
|
wx.setStorageSync(HTTPConst.TokenStoreKey, token)
|
|
success(token)
|
|
},
|
|
}
|
|
this.request(params)
|
|
})
|
|
}
|
|
// 获取微信code
|
|
_fetchWXCode() {
|
|
return new Promise(resolve => {
|
|
wx.login({
|
|
success(res) {
|
|
console.log('获取Code成功 ' + res.code)
|
|
if (res.code) {
|
|
resolve(res.code)
|
|
} else {
|
|
wx.showToast({
|
|
icon: "none",
|
|
title: '登录失败',
|
|
})
|
|
console.log('登录失败!' + res.errMsg)
|
|
}
|
|
}
|
|
})
|
|
})
|
|
}
|
|
}
|
|
|
|
export { AuthModel }
|