Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
X
xyqb-user2
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
head_group
xyqb-user2
Commits
ed0c0115
Commit
ed0c0115
authored
Nov 06, 2017
by
技术部-任文超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
与H5协商调整One-Time-Token的参数传递方式为param参数方式
parent
7f6a40eb
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
22 additions
and
23 deletions
+22
-23
Constants.java
src/main/java/cn/quantgroup/xyqb/Constants.java
+1
-1
OneTimeTokenValidateAdvisor.java
...tgroup/xyqb/aspect/token/OneTimeTokenValidateAdvisor.java
+3
-3
UserController.java
...ntgroup/xyqb/controller/internal/user/UserController.java
+1
-1
JsonResult.java
src/main/java/cn/quantgroup/xyqb/model/JsonResult.java
+6
-6
OneTimeTokenTests.java
src/test/java/token/OneTimeTokenTests.java
+11
-12
No files found.
src/main/java/cn/quantgroup/xyqb/Constants.java
View file @
ed0c0115
...
...
@@ -12,7 +12,7 @@ public interface Constants {
String
PASSWORD_SALT
=
"_lkb"
;
String
IMAGE_CAPTCHA_KEY
=
"img_captcha:"
;
String
ONE_TIME_TOKEN
=
"
One-Time-
Token"
;
String
ONE_TIME_TOKEN
=
"
oneTime
Token"
;
String
REDIS_CAPTCHA_KEY
=
"auth:"
;
String
REDIS_CAPTCHA_KEY_PATTERN
=
REDIS_CAPTCHA_KEY
+
IMAGE_CAPTCHA_KEY
+
"*"
;
...
...
src/main/java/cn/quantgroup/xyqb/aspect/token/OneTimeTokenValidateAdvisor.java
View file @
ed0c0115
...
...
@@ -53,7 +53,7 @@ public class OneTimeTokenValidateAdvisor {
if
(
valid
)
{
return
pjp
.
proceed
();
}
return
JsonResult
.
buildSuccessResult
(
"
Token过期,请重新请求
"
,
""
,
2L
);
return
JsonResult
.
buildSuccessResult
(
"
令牌已失效
"
,
""
,
2L
);
}
/**
...
...
@@ -63,7 +63,7 @@ public class OneTimeTokenValidateAdvisor {
private
boolean
oneTimeTokenValid
()
{
HttpServletRequest
request
=
((
ServletRequestAttributes
)
RequestContextHolder
.
getRequestAttributes
()).
getRequest
();
// 当前请求的OneTimeToken
String
oneTimeToken
=
request
.
get
Head
er
(
Constants
.
ONE_TIME_TOKEN
);
String
oneTimeToken
=
request
.
get
Paramet
er
(
Constants
.
ONE_TIME_TOKEN
);
if
(
StringUtils
.
isBlank
(
oneTimeToken
)){
return
false
;
}
...
...
@@ -77,7 +77,7 @@ public class OneTimeTokenValidateAdvisor {
if
(
valid
)
{
redisTemplate
.
delete
(
oneTimeToken
);
}
else
{
LOGGER
.
info
(
"
Token过期,请重新请求, One-Time-
Token={}, clientIp={}"
,
oneTimeToken
,
request
.
getRemoteAddr
());
LOGGER
.
info
(
"
令牌已失效,请重新请求, oneTime
Token={}, clientIp={}"
,
oneTimeToken
,
request
.
getRemoteAddr
());
}
return
valid
;
}
...
...
src/main/java/cn/quantgroup/xyqb/controller/internal/user/UserController.java
View file @
ed0c0115
...
...
@@ -239,7 +239,7 @@ public class UserController implements IBaseController {
* @return
*/
private
Map
<
String
,
JsonResult
>
getHeaderParam
(
HttpServletRequest
request
)
{
Map
<
String
,
JsonResult
>
result
=
new
HashMap
<>();
Map
<
String
,
JsonResult
>
result
=
new
HashMap
<
String
,
JsonResult
>();
String
verificationHeader
=
"Verification "
;
String
credential
=
request
.
getHeader
(
"authorization"
);
if
(
StringUtils
.
isBlank
(
credential
))
{
...
...
src/main/java/cn/quantgroup/xyqb/model/JsonResult.java
View file @
ed0c0115
...
...
@@ -63,8 +63,8 @@ public class JsonResult implements Serializable {
return
new
JsonResult
(
msg
,
SUCCESS_CODE
,
data
,
SUCCESS_BUSSINESS_CODE
);
}
public
static
JsonResult
buildSuccessResult
(
String
msg
,
Object
data
,
Long
bus
sinessId
)
{
return
new
JsonResult
(
msg
,
SUCCESS_CODE
,
data
,
bus
sinessId
);
public
static
JsonResult
buildSuccessResult
(
String
msg
,
Object
data
,
Long
bus
inessCode
)
{
return
new
JsonResult
(
msg
,
SUCCESS_CODE
,
data
,
bus
inessCode
);
}
/**
...
...
@@ -78,12 +78,12 @@ public class JsonResult implements Serializable {
return
new
JsonResult
(
msg
,
SUCCESS_CODE
,
data
,
ERROR_BUSSINESS_CODE
);
}
public
static
JsonResult
buildErrorStateResult
(
String
msg
,
Object
data
,
Long
bus
niessId
)
{
return
new
JsonResult
(
msg
,
SUCCESS_CODE
,
data
,
bus
niessId
);
public
static
JsonResult
buildErrorStateResult
(
String
msg
,
Object
data
,
Long
bus
inessCode
)
{
return
new
JsonResult
(
msg
,
SUCCESS_CODE
,
data
,
bus
inessCode
);
}
public
static
JsonResult
buildFatalErrorStateResult
(
String
msg
,
Object
data
,
Long
bus
niessId
)
{
return
new
JsonResult
(
msg
,
ERROR_STATE_CODE
,
data
,
bus
niessId
);
public
static
JsonResult
buildFatalErrorStateResult
(
String
msg
,
Object
data
,
Long
bus
inessCode
)
{
return
new
JsonResult
(
msg
,
ERROR_STATE_CODE
,
data
,
bus
inessCode
);
}
public
String
getMsg
()
{
...
...
src/test/java/token/OneTimeTokenTests.java
View file @
ed0c0115
...
...
@@ -29,6 +29,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.
@SpringApplicationConfiguration
(
classes
=
Bootstrap
.
class
)
@WebAppConfiguration
public
class
OneTimeTokenTests
{
final
String
userName
=
"root"
;
final
String
password
=
"!QAZ2wsx"
;
final
String
phoneNo
=
"13461067662"
;
private
MockMvc
mvc
;
...
...
@@ -58,7 +60,7 @@ public class OneTimeTokenTests {
* @throws Exception
*/
@Test
public
void
test
TokenOnce
()
throws
Exception
{
public
void
test
OneTimeToken
()
throws
Exception
{
String
tokenOnceUri
=
"/token/oneTime"
;
MvcResult
mvcResult
=
mvc
.
perform
(
MockMvcRequestBuilders
.
get
(
tokenOnceUri
).
accept
(
MediaType
.
APPLICATION_JSON
))
.
andExpect
(
status
().
isOk
())
...
...
@@ -96,10 +98,9 @@ public class OneTimeTokenTests {
// 第一次使用OneTime-Token
String
aspectUri
=
"/user/loginForH5"
;
mvcResult
=
mvc
.
perform
(
MockMvcRequestBuilders
.
get
(
aspectUri
).
accept
(
MediaType
.
APPLICATION_JSON
)
.
header
(
Constants
.
ONE_TIME_TOKEN
,
oneTimeToken
)
.
param
(
"phoneNo"
,
phoneNo
)
.
param
(
"password"
,
"Qg123456"
)
.
param
(
"verificationCode"
,
"1234"
))
.
param
(
Constants
.
ONE_TIME_TOKEN
,
oneTimeToken
)
.
param
(
"phoneNo"
,
userName
)
.
param
(
"password"
,
password
))
.
andExpect
(
status
().
isOk
())
.
andReturn
();
content
=
mvcResult
.
getResponse
().
getContentAsString
();
...
...
@@ -110,10 +111,9 @@ public class OneTimeTokenTests {
Assert
.
assertNotEquals
(
"0002"
,
businessCode
);
// 使用过期的TokenOnce
mvcResult
=
mvc
.
perform
(
MockMvcRequestBuilders
.
get
(
aspectUri
).
accept
(
MediaType
.
APPLICATION_JSON
)
.
header
(
"TokenOnce"
,
oneTimeToken
)
.
param
(
"phoneNo"
,
phoneNo
)
.
param
(
"password"
,
"Qg123456"
)
.
param
(
"verificationCode"
,
"1234"
))
.
param
(
Constants
.
ONE_TIME_TOKEN
,
oneTimeToken
)
.
param
(
"phoneNo"
,
userName
)
.
param
(
"password"
,
password
))
.
andExpect
(
status
().
isOk
())
.
andReturn
();
content
=
mvcResult
.
getResponse
().
getContentAsString
();
...
...
@@ -124,9 +124,8 @@ public class OneTimeTokenTests {
Assert
.
assertEquals
(
"0002"
,
businessCode
);
// 不使用TokenOnce
mvcResult
=
mvc
.
perform
(
MockMvcRequestBuilders
.
get
(
aspectUri
).
accept
(
MediaType
.
APPLICATION_JSON
)
.
param
(
"phoneNo"
,
phoneNo
)
.
param
(
"password"
,
"Qg123456"
)
.
param
(
"verificationCode"
,
"1234"
))
.
param
(
"phoneNo"
,
userName
)
.
param
(
"password"
,
password
))
.
andExpect
(
status
().
isOk
())
.
andReturn
();
content
=
mvcResult
.
getResponse
().
getContentAsString
();
...
...
Write
Preview
Markdown
is supported
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