Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
Litemall
Commits
6bd5ec12
Commit
6bd5ec12
authored
Mar 26, 2018
by
Junling Bu
Browse files
登陆相关操作从util.js重构到user.js; 此外用户如果请求后台没有登陆时,则跳转到我的页面登陆。
parent
c0fb0732
Changes
2
Hide whitespace changes
Inline
Side-by-side
litemall-wx/services/user.js
View file @
6bd5ec12
/**
* 用户相关服务
*/
const
util
=
require
(
'
../utils/util.js
'
);
const
api
=
require
(
'
../config/api.js
'
);
/**
* Promise封装wx.checkSession
*/
function
checkSession
()
{
return
new
Promise
(
function
(
resolve
,
reject
)
{
wx
.
checkSession
({
success
:
function
()
{
resolve
(
true
);
},
fail
:
function
()
{
reject
(
false
);
}
})
});
}
/**
* Promise封装wx.login
*/
function
login
()
{
return
new
Promise
(
function
(
resolve
,
reject
)
{
wx
.
login
({
success
:
function
(
res
)
{
if
(
res
.
code
)
{
resolve
(
res
);
}
else
{
reject
(
res
);
}
},
fail
:
function
(
err
)
{
reject
(
err
);
}
});
});
}
/**
* Promise封装wx.getUserInfo
*/
function
getUserInfo
()
{
return
new
Promise
(
function
(
resolve
,
reject
)
{
wx
.
getUserInfo
({
withCredentials
:
true
,
success
:
function
(
res
)
{
resolve
(
res
);
},
fail
:
function
(
err
)
{
reject
(
err
);
}
})
});
}
/**
* 调用微信登录
*/
...
...
@@ -13,9 +65,9 @@ function loginByWeixin() {
let
code
=
null
;
return
new
Promise
(
function
(
resolve
,
reject
)
{
return
util
.
login
().
then
((
res
)
=>
{
return
login
().
then
((
res
)
=>
{
code
=
res
.
code
;
return
util
.
getUserInfo
();
return
getUserInfo
();
}).
then
((
userInfo
)
=>
{
//登录远程服务器
util
.
request
(
api
.
AuthLoginByWeixin
,
{
code
:
code
,
userInfo
:
userInfo
},
'
POST
'
).
then
(
res
=>
{
...
...
@@ -44,7 +96,7 @@ function checkLogin() {
return
new
Promise
(
function
(
resolve
,
reject
)
{
if
(
wx
.
getStorageSync
(
'
userInfo
'
)
&&
wx
.
getStorageSync
(
'
token
'
))
{
util
.
checkSession
().
then
(()
=>
{
checkSession
().
then
(()
=>
{
resolve
(
true
);
}).
catch
(()
=>
{
reject
(
false
);
...
...
litemall-wx/utils/util.js
View file @
6bd5ec12
...
...
@@ -32,35 +32,14 @@ function request(url, data = {}, method = "GET") {
'
X-Litemall-Token
'
:
wx
.
getStorageSync
(
'
token
'
)
},
success
:
function
(
res
)
{
// console.log("success");
if
(
res
.
statusCode
==
200
)
{
if
(
res
.
data
.
errno
==
401
)
{
//需要登录后才可以操作
let
code
=
null
;
return
login
().
then
((
res
)
=>
{
code
=
res
.
code
;
return
getUserInfo
();
}).
then
((
userInfo
)
=>
{
//登录远程服务器
request
(
api
.
AuthLoginByWeixin
,
{
code
:
code
,
userInfo
:
userInfo
},
'
POST
'
).
then
(
res
=>
{
if
(
res
.
errno
===
0
)
{
//存储用户信息
wx
.
setStorageSync
(
'
userInfo
'
,
res
.
data
.
userInfo
);
wx
.
setStorageSync
(
'
token
'
,
res
.
data
.
token
);
resolve
(
res
);
}
else
{
reject
(
res
);
}
}).
catch
((
err
)
=>
{
reject
(
err
);
});
}).
catch
((
err
)
=>
{
reject
(
err
);
})
wx
.
switchTab
({
url
:
'
/pages/ucenter/index/index
'
});
}
else
{
resolve
(
res
.
data
);
}
...
...
@@ -71,60 +50,6 @@ function request(url, data = {}, method = "GET") {
},
fail
:
function
(
err
)
{
reject
(
err
)
// console.log("failed")
}
})
});
}
/**
* 检查微信会话是否过期
*/
function
checkSession
()
{
return
new
Promise
(
function
(
resolve
,
reject
)
{
wx
.
checkSession
({
success
:
function
()
{
resolve
(
true
);
},
fail
:
function
()
{
reject
(
false
);
}
})
});
}
/**
* 调用微信登录
*/
function
login
()
{
return
new
Promise
(
function
(
resolve
,
reject
)
{
wx
.
login
({
success
:
function
(
res
)
{
if
(
res
.
code
)
{
//登录远程服务器
// console.log(res)
resolve
(
res
);
}
else
{
reject
(
res
);
}
},
fail
:
function
(
err
)
{
reject
(
err
);
}
});
});
}
function
getUserInfo
()
{
return
new
Promise
(
function
(
resolve
,
reject
)
{
wx
.
getUserInfo
({
withCredentials
:
true
,
success
:
function
(
res
)
{
// console.log(res)
resolve
(
res
);
},
fail
:
function
(
err
)
{
reject
(
err
);
}
})
});
...
...
@@ -156,10 +81,7 @@ module.exports = {
formatTime
,
request
,
redirect
,
showErrorToast
,
checkSession
,
login
,
getUserInfo
,
showErrorToast
}
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment