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
61d1ca3b
Commit
61d1ca3b
authored
May 10, 2017
by
Java-刘 彧阳
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
高仿一个函谷关的登录验证接口的返回,实际已去函谷关验证用户登录了
parent
ee380f09
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
61 additions
and
9 deletions
+61
-9
AuthInfoController.java
...up/xyqb/controller/internal/login/AuthInfoController.java
+61
-9
No files found.
src/main/java/cn/quantgroup/xyqb/controller/internal/login/AuthInfoController.java
View file @
61d1ca3b
package
cn
.
quantgroup
.
xyqb
.
controller
.
internal
.
login
;
package
cn
.
quantgroup
.
xyqb
.
controller
.
internal
.
login
;
import
cn.quantgroup.xyqb.controller.IBaseController
;
import
cn.quantgroup.xyqb.controller.IBaseController
;
import
cn.quantgroup.xyqb.entity.User
;
import
cn.quantgroup.xyqb.exception.ResponseException
;
import
cn.quantgroup.xyqb.model.JsonResult
;
import
cn.quantgroup.xyqb.model.JsonResult
;
import
cn.quantgroup.xyqb.model.UserRet
;
import
cn.quantgroup.xyqb.model.UserRet
;
import
cn.quantgroup.xyqb.model.session.LoginInfo
;
import
cn.quantgroup.xyqb.model.session.LoginInfo
;
import
cn.quantgroup.xyqb.model.session.SessionStruct
;
import
cn.quantgroup.xyqb.model.session.SessionStruct
;
import
cn.quantgroup.xyqb.service.http.IHttpService
;
import
cn.quantgroup.xyqb.service.user.IUserService
;
import
com.alibaba.fastjson.JSONObject
;
import
com.google.common.collect.ImmutableMap
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
org.springframework.web.context.request.ServletRequestAttributes
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.Map
;
/**
/**
* Created by Miraculous on 2016/12/30.
* Created by Miraculous on 2016/12/30.
...
@@ -15,18 +29,56 @@ import org.springframework.web.bind.annotation.RestController;
...
@@ -15,18 +29,56 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping
(
"/auth"
)
@RequestMapping
(
"/auth"
)
public
class
AuthInfoController
implements
IBaseController
{
public
class
AuthInfoController
implements
IBaseController
{
@Value
(
"${xyqb.auth.url}"
)
private
String
xyqbAuthUrl
;
@Autowired
private
IHttpService
httpService
;
@Autowired
private
IUserService
userService
;
@RequestMapping
(
"/info/login"
)
@RequestMapping
(
"/info/login"
)
public
JsonResult
loginInfo
()
{
public
JsonResult
loginInfo
()
{
SessionStruct
sessionStruct
=
getSessionStruct
();
SessionStruct
sessionStruct
=
getSessionStruct
();
LoginInfo
loginInfo
=
new
LoginInfo
();
if
(
null
!=
sessionStruct
)
{
loginInfo
.
setUser
(
UserRet
.
getUserRet
(
sessionStruct
.
getValues
().
getUser
()));
LoginInfo
loginInfo
=
new
LoginInfo
();
loginInfo
.
setToken
(
sessionStruct
.
getSid
());
loginInfo
.
setUser
(
UserRet
.
getUserRet
(
sessionStruct
.
getValues
().
getUser
()));
LoginInfo
.
LoginContext
context
=
new
LoginInfo
.
LoginContext
();
loginInfo
.
setToken
(
sessionStruct
.
getSid
());
context
.
setChannelId
(
sessionStruct
.
getValues
().
getLoginProperties
().
getChannelId
());
LoginInfo
.
LoginContext
context
=
new
LoginInfo
.
LoginContext
();
context
.
setCreatedFrom
(
sessionStruct
.
getValues
().
getLoginProperties
().
getCreatedFrom
());
context
.
setChannelId
(
sessionStruct
.
getValues
().
getLoginProperties
().
getChannelId
());
context
.
setAppChannel
(
sessionStruct
.
getValues
().
getLoginProperties
().
getAppChannel
());
context
.
setCreatedFrom
(
sessionStruct
.
getValues
().
getLoginProperties
().
getCreatedFrom
());
loginInfo
.
setLoginContext
(
context
);
context
.
setAppChannel
(
sessionStruct
.
getValues
().
getLoginProperties
().
getAppChannel
());
return
JsonResult
.
buildSuccessResult
(
""
,
loginInfo
);
loginInfo
.
setLoginContext
(
context
);
return
JsonResult
.
buildSuccessResult
(
""
,
loginInfo
);
}
else
{
// 函谷关去查token 返回值高仿
HttpServletRequest
request
=
((
ServletRequestAttributes
)
RequestContextHolder
.
getRequestAttributes
()).
getRequest
();
String
token
=
request
.
getHeader
(
"x-auth-token"
);
if
(
StringUtils
.
isBlank
(
token
)
||
token
.
length
()
!=
36
){
return
JsonResult
.
buildErrorStateResult
(
"用户未登录"
,
null
);
}
String
checkUrl
=
xyqbAuthUrl
+
"/innerapi/is_login"
;
ImmutableMap
<
String
,
String
>
headMap
=
ImmutableMap
.
of
(
"x-auth-token"
,
token
);
String
response
=
httpService
.
get
(
checkUrl
,
headMap
,
null
);
JsonResult
result
=
JSONObject
.
parseObject
(
response
,
JsonResult
.
class
);
if
(
result
==
null
||
!
"0000"
.
equals
(
result
.
getCode
())
||
!
"0000"
.
equals
(
result
.
getBusinessCode
()))
{
return
JsonResult
.
buildErrorStateResult
(
"用户未登录"
,
null
);
}
String
phoneNo
=
((
Map
<
String
,
String
>)
result
.
getData
()).
get
(
"phoneNo"
);
User
user
=
userService
.
findByPhoneWithCache
(
phoneNo
);
LoginInfo
loginInfo
=
new
LoginInfo
();
loginInfo
.
setUser
(
UserRet
.
getUserRet
(
user
));
loginInfo
.
setToken
(
token
);
LoginInfo
.
LoginContext
context
=
new
LoginInfo
.
LoginContext
();
context
.
setChannelId
(
null
);
context
.
setCreatedFrom
(
user
.
getRegisteredFrom
());
context
.
setAppChannel
(
""
);
loginInfo
.
setLoginContext
(
context
);
return
JsonResult
.
buildSuccessResult
(
""
,
loginInfo
);
}
}
}
}
}
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