Toggle navigation
Toggle navigation
This project
Loading...
Sign in
fe
/
yoho-blk
·
Commits
Go to a project
GitLab
Go to group
Project
Activity
Files
Commits
Pipelines
0
Builds
0
Graphs
Milestones
Issues
0
Merge Requests
1
Members
Labels
Wiki
Forks
Network
Create a new issue
Download as
Email Patches
Plain Diff
Browse Files
Authored by
shijian
8 years ago
Commit
a68795806941acbddac0c81406f6449d788feff6
1 parent
42783ec5
登录页解决遍历账号的问题
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
142 additions
and
140 deletions
.gitignore
apps/passport/router.js
public/js/passport/login/index.js
.gitignore
View file @
a687958
...
...
@@ -2,12 +2,12 @@
# Created by https://www.gitignore.io/api/node,webstorm,netbeans,sublimetext,vim
### Node ###
# Logs
!logs/README.md
# Logs
!logs/README.md
logs
*.log
npm-debug.log*
npm-debug.log*
# Runtime data
pids
*.pid
...
...
@@ -141,3 +141,4 @@ public/bundle/*
.eslintcache
*.log.*
.vscode/
connection-parse/
\ No newline at end of file
...
...
apps/passport/router.js
View file @
a687958
...
...
@@ -20,7 +20,8 @@ const router = express.Router(); // eslint-disable-line
// 本地登录
router
.
get
(
'/login'
,
login
.
common
.
beforeLogin
,
login
.
local
.
loginPage
);
router
.
post
(
'/login/auth'
,
login
.
local
.
login
);
router
.
post
(
'/login/user'
,
back
.
validateInputAPI
,
back
.
getUserInfoAPI
);
// router.post('/login/user', back.validateInputAPI, back.getUserInfoAPI);
router
.
get
(
'/logout'
,
login
.
local
.
logout
);
// 手机短信验证码
...
...
public/js/passport/login/index.js
View file @
a687958
...
...
@@ -25,7 +25,7 @@ var $phoneNumInput = $('#account'),
var
$loginTip
=
$loginBtn
.
siblings
(
'.login-fail-tip'
),
ep
=
new
EventProxy
();
var
mailPhoneRegx
=
require
(
'../common/mail-phone-regx'
);
//
var mailPhoneRegx = require('../common/mail-phone-regx');
var
mailAc
=
require
(
'../common/ac-email'
);
// 邮箱自动完成
var
$remember
=
$
(
'.remember-me'
);
var
captchaUrl
=
'/passport/images?t='
;
// /passport/images?t=1454464125
...
...
@@ -53,7 +53,7 @@ var secondCount = 60;
// 短信验证码只能验证一次
var
isSmsCheckedSuccessFlag
=
false
;
var
currLoginType
=
'PasswordLogin'
;
var
userIsRight
=
false
;
//
var userIsRight = false;
var
smsIsRight
=
false
;
require
(
'yoho-jquery-placeholder'
);
...
...
@@ -86,94 +86,94 @@ function getMoblie() {
}
// 验证账户名
function
validateAccountLocal
()
{
var
phoneNum
=
getMoblie
(),
regionCode
=
$regionCodeText
.
text
();
if
(
phoneNum
!==
''
)
{
if
(
/^
[
0-9
]
+$/
.
test
(
phoneNum
))
{
// 这里只做中国区验证
if
(
regionCode
===
'+86'
)
{
if
(
phoneNum
.
length
===
11
&&
mailPhoneRegx
.
phoneRegx
[
'+86'
].
test
(
phoneNum
))
{
return
true
;
}
else
{
errTip
(
$phoneNumInput
,
'手机号码不正确,请重新输入'
);
return
false
;
}
}
return
true
;
}
else
{
// 邮箱验证
if
(
mailPhoneRegx
.
emailRegx
.
test
(
phoneNum
))
{
return
true
;
}
else
{
errTip
(
$phoneNumInput
,
'邮箱格式不正确,请重新输入'
);
return
false
;
}
}
}
else
{
errTip
(
$phoneNumInput
,
'请输入账号'
);
return
false
;
}
}
// function validateAccountLocal() {
// var phoneNum = getMoblie(),
// regionCode = $regionCodeText.text();
// if (phoneNum !== '') {
// if (/^[0-9]+$/.test(phoneNum)) {
// // 这里只做中国区验证
// if (regionCode === '+86') {
// if (phoneNum.length === 11 && mailPhoneRegx.phoneRegx['+86'].test(phoneNum)) {
// return true;
// } else {
// errTip($phoneNumInput, '手机号码不正确,请重新输入');
// return false;
// }
// }
// return true;
// } else {
// // 邮箱验证
// if (mailPhoneRegx.emailRegx.test(phoneNum)) {
// return true;
// } else {
// errTip($phoneNumInput, '邮箱格式不正确,请重新输入');
// return false;
// }
// }
// } else {
// errTip($phoneNumInput, '请输入账号');
// return false;
// }
// }
// 异步验证帐号是否存在
function
validateAccountAsync
(
url
)
{
return
$
.
ajax
({
type
:
'POST'
,
url
:
url
,
data
:
{
phoneNum
:
getMoblie
(),
area
:
getArea
()
}
}).
then
(
function
(
data
)
{
if
(
data
.
code
&&
data
.
code
===
200
)
{
return
true
;
}
else
{
errTip
(
$phoneNumInput
,
data
.
message
);
return
false
;
}
});
}
// function validateAccountAsync(url) {
// return $.ajax({
// type: 'POST',
// url: url,
// data: {
// phoneNum: getMoblie(),
// area: getArea()
// }
// }).then(function(data) {
// if (data.code && data.code === 200) {
// return true;
// } else {
// errTip($phoneNumInput, data.message);
// return false;
// }
// });
// }
// 整合本地和异步验证信息
function
validateAccount
()
{
if
(
userIsRight
)
{
//
if (userIsRight) {
return
$
.
Deferred
().
resolve
(
true
).
promise
();
// eslint-disable-line
}
return
(
function
()
{
var
defer
=
$
.
Deferred
();
// eslint-disable-line
var
url
=
'/passport/login/user'
;
if
(
currLoginType
===
'SMSLogin'
)
{
url
=
'/passport/login/sms/checkuser'
;
}
if
(
validateAccountLocal
())
{
validateAccountAsync
(
url
).
then
(
function
(
result
)
{
if
(
result
)
{
defer
.
resolve
(
result
);
}
else
{
defer
.
reject
(
result
);
}
});
}
else
{
defer
.
reject
(
false
);
}
return
defer
.
promise
();
}()).
then
(
function
()
{
hideTip
(
$phoneNumInput
);
ep
.
emit
(
'phone'
,
true
);
userIsRight
=
true
;
}).
fail
(
function
()
{
ep
.
emit
(
'phone'
,
false
);
});
// }
// return (function() {
// var defer = $.Deferred(); // eslint-disable-line
// var url = '/passport/login/user';
// if (currLoginType === 'SMSLogin') {
// url = '/passport/login/sms/checkuser';
// }
// if (validateAccountLocal()) {
// validateAccountAsync(url).then(function(result) {
// if (result) {
// defer.resolve(result);
// } else {
// defer.reject(result);
// }
// });
// } else {
// defer.reject(false);
// }
// return defer.promise();
// }()).then(function() {
// hideTip($phoneNumInput);
// ep.emit('phone', true);
// userIsRight = true;
// }).fail(function() {
// ep.emit('phone', false);
// });
}
// 验证密码
...
...
@@ -282,65 +282,65 @@ function showAccountErrTimes() {
}
// 登录次数限制接口
function
throttle
()
{
return
$
.
ajax
({
url
:
'/passport/login/account'
,
type
:
'GET'
,
data
:
{
account
:
getMoblie
()
}
});
}
// function throttle() {
// return $.ajax({
// url: '/passport/login/account',
// type: 'GET',
// data: {
// account: getMoblie()
// }
// });
// }
// 验证帐号系统
function
validate
()
{
if
(
userIsRight
)
{
return
true
;
}
return
validateAccount
().
then
(
function
(
result
)
{
if
(
result
)
{
return
throttle
();
}
else
{
return
false
;
}
}).
then
(
function
(
res
)
{
var
defer
=
$
.
Deferred
();
// eslint-disable-line
if
(
!
res
)
{
defer
.
reject
(
false
);
}
if
(
res
.
data
&&
res
.
data
.
needCaptcha
)
{
showAccountErrTimes
();
defer
.
reject
(
false
);
}
defer
.
resolve
(
true
);
return
defer
.
promise
();
});
}
// function validate() {
// if (userIsRight) {
// return true;
// }
// return validateAccount().then(function(result) {
// if (result) {
// return throttle();
// } else {
// return false;
// }
// }).then(function(res) {
// var defer = $.Deferred(); // eslint-disable-line
// if (!res) {
// defer.reject(false);
// }
// if (res.data && res.data.needCaptcha) {
// showAccountErrTimes();
// defer.reject(false);
// }
// defer.resolve(true);
// return defer.promise();
// });
// }
// 邮箱自动补全
mailAc
(
$phoneNumInput
,
function
()
{
});
// 手机号码输入框失去焦点事件
function
phoneBlur
()
{
$phone
.
removeClass
(
'focus'
);
validate
();
}
$phoneNumInput
.
on
(
'focus'
,
function
()
{
hideTip
(
$phoneNumInput
);
$phone
.
addClass
(
'focus'
);
$
(
this
).
off
(
'blur'
).
on
(
'blur'
,
phoneBlur
);
});
$phoneNumInput
.
on
(
'input'
,
function
()
{
userIsRight
=
false
;
});
// function phoneBlur() {
// $phone.removeClass('focus');
// validate();
// }
// $phoneNumInput.on('focus', function() {
// hideTip($phoneNumInput);
// $phone.addClass('focus');
// $(this).off('blur').on('blur', phoneBlur);
// });
// $phoneNumInput.on('input', function() {
// userIsRight = false;
// });
$
(
'[placeholder]'
).
placeholder
();
...
...
Please
register
or
login
to post a comment