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
b0013bb1
Commit
b0013bb1
authored
Jul 05, 2023
by
王亮
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
temp commit(geetest)
parent
186ccd2e
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
45 additions
and
5 deletions
+45
-5
BehaviorReq.java
...ava/cn/quantgroup/xyqb/controller/req/v2/BehaviorReq.java
+1
-1
BehaviorCodeBean.java
src/main/java/cn/quantgroup/xyqb/model/BehaviorCodeBean.java
+17
-1
ClientType.java
src/main/java/cn/quantgroup/xyqb/model/ClientType.java
+1
-1
GeetestBehaviorStrategy.java
...n/quantgroup/xyqb/service/v2/GeetestBehaviorStrategy.java
+26
-2
No files found.
src/main/java/cn/quantgroup/xyqb/controller/req/v2/BehaviorReq.java
View file @
b0013bb1
...
...
@@ -19,7 +19,7 @@ public class BehaviorReq {
* 0:h5,1:web,2:app
* @see ClientType
*/
private
String
clientType
;
private
Integer
clientType
;
/**
* 0:账密,1:短验;
...
...
src/main/java/cn/quantgroup/xyqb/model/BehaviorCodeBean.java
View file @
b0013bb1
...
...
@@ -9,7 +9,7 @@ import lombok.Data;
@Data
public
class
BehaviorCodeBean
{
/**
*
0:极验,1
: 量化派图形验证码
*
1:极验,2
: 量化派图形验证码
* 当客户端给的是极验,但是由于极验不可用的时候,会返回降级量化派图形验证码
*/
private
Integer
type
;
...
...
@@ -24,7 +24,23 @@ public class BehaviorCodeBean {
}
@Data
@Builder
public
static
class
GeetestCode
{
/**
* 流水号,一次完整验证流程的唯一标识
*/
private
String
challenge
;
/**
* 向极验申请的账号id
*/
private
String
gt
;
private
String
reChallenge
;
/**
* 新版验证码标识,固定不变
*/
private
boolean
newCaptcha
;
private
boolean
offline
;
}
}
src/main/java/cn/quantgroup/xyqb/model/ClientType.java
View file @
b0013bb1
...
...
@@ -33,7 +33,7 @@ public enum ClientType {
}
}
public
static
ClientType
valueBy
Nam
e
(
Integer
code
)
{
public
static
ClientType
valueBy
Cod
e
(
Integer
code
)
{
switch
(
code
)
{
case
0
:
return
H5
;
...
...
src/main/java/cn/quantgroup/xyqb/service/v2/GeetestBehaviorStrategy.java
View file @
b0013bb1
...
...
@@ -3,13 +3,24 @@ package cn.quantgroup.xyqb.service.v2;
import
cn.quantgroup.xyqb.controller.req.v2.BehaviorReq
;
import
cn.quantgroup.xyqb.controller.req.v2.ValidateBehavior
;
import
cn.quantgroup.xyqb.model.BehaviorCodeBean
;
import
cn.quantgroup.xyqb.model.ClientType
;
import
cn.quantgroup.xyqb.service.captcha.IGeetestCaptchaService
;
import
cn.quantgroup.xyqb.util.PasswordUtil
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.Map
;
import
java.util.UUID
;
/**
* 极验模式
*/
@Service
public
class
GeetestBehaviorStrategy
implements
BehaviorStrategy
{
public
class
GeetestBehaviorStrategy
implements
BehaviorStrategy
{
@Resource
private
IGeetestCaptchaService
geetestCaptchaService
;
@Override
public
Integer
getType
()
{
return
1
;
...
...
@@ -23,8 +34,21 @@ public class GeetestBehaviorStrategy implements BehaviorStrategy{
@Override
public
BehaviorCodeBean
generate
(
BehaviorReq
behaviorReq
)
{
BehaviorCodeBean
behaviorCodeBean
=
new
BehaviorCodeBean
();
String
key
=
StringUtils
.
isNotBlank
(
behaviorReq
.
getPhone
())
?
behaviorReq
.
getPhone
().
trim
()
:
UUID
.
randomUUID
().
toString
();
// key指纹
Map
<
String
,
String
>
imgMap
=
geetestCaptchaService
.
fetchGeetestCaptcha
(
PasswordUtil
.
MD5
(
key
),
behaviorReq
.
getIp
(),
ClientType
.
valueByCode
(
behaviorReq
.
getClientType
()));
if
(
imgMap
.
containsKey
(
"success"
)
&&
"1"
.
equals
(
imgMap
.
get
(
"success"
)))
{
behaviorCodeBean
.
setType
(
1
);
behaviorCodeBean
.
setGeetestCode
(
BehaviorCodeBean
.
GeetestCode
.
builder
().
gt
(
imgMap
.
get
(
"gt"
))
.
challenge
(
imgMap
.
get
(
"challenge"
))
.
reChallenge
(
imgMap
.
get
(
"reChallenge"
)).
build
());
return
null
;
}
else
{
behaviorCodeBean
.
setType
(
2
);
}
return
behaviorCodeBean
;
}
}
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