记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
董敬伟
liquidnet-bus-v1
Commits
21b4196a
Commit
21b4196a
authored
May 14, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
暂时停用lzuul filter:login|auth;
添加第三方登录注册接口到login filter;
parent
83614413
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
61 additions
and
49 deletions
+61
-49
liquidnet-support-zuul.yml
...et-bus-config/liquidnet-config/liquidnet-support-zuul.yml
+11
-11
AdamEntersServiceImpl.java
...dnet/service/adam/service/impl/AdamEntersServiceImpl.java
+27
-26
GlobalAuthFilter.java
...a/com/liquidnet/support/zuul/filter/GlobalAuthFilter.java
+2
-1
GlobalLoginFilter.java
.../com/liquidnet/support/zuul/filter/GlobalLoginFilter.java
+21
-11
No files found.
liquidnet-bus-config/liquidnet-config/liquidnet-support-zuul.yml
View file @
21b4196a
...
@@ -38,8 +38,8 @@ spring:
...
@@ -38,8 +38,8 @@ spring:
name
:
${liquidnet.info.name}
name
:
${liquidnet.info.name}
autoconfigure
:
autoconfigure
:
exclude
:
exclude
:
-
org.springframework.cloud.bus.BusAutoConfiguration
-
org.springframework.cloud.bus.BusAutoConfiguration
-
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
-
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
profiles
:
profiles
:
include
:
common-service
include
:
common-service
# cloud:
# cloud:
...
@@ -81,17 +81,17 @@ zuul:
...
@@ -81,17 +81,17 @@ zuul:
global
:
global
:
login
:
login
:
url
:
/adam/login/sms,
url
:
/adam/login/sms,
/adam/login/mobile,
/adam/login/mobile,
/adam/login/tpa,
/adam/login/tpa
exclude
:
exclude
:
url
:
/adam/v2/api-docs,
url
:
/adam/v2/api-docs,
/kylin/v2/api-docs
,
/adam/v2/api-docs-ext
,
/adam/v2/api-docs-ext
,
/kylin/v2/api-docs
,
/kylin/v2/api-docs-ext,
/kylin/v2/api-docs-ext,
/adam/send
,
/adam/login/sms
,
/adam/login/sms
,
/adam/login/mobile
,
/adam/login/mobile
,
/adam/login/tpa
,
/adam/login/tpa,
/adam/send
# -----------------------------------------------------------
# -----------------------------------------------------------
#解决错误 com.netflix.client.ClientException: Load balancer does not have available server for client:panfeng-item-service
#解决错误 com.netflix.client.ClientException: Load balancer does not have available server for client:panfeng-item-service
#这样就可以即指定path与URL,又不破坏Zuul的Hystrix与Ribbon特性了。
#这样就可以即指定path与URL,又不破坏Zuul的Hystrix与Ribbon特性了。
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamEntersServiceImpl.java
View file @
21b4196a
...
@@ -71,32 +71,33 @@ public class AdamEntersServiceImpl extends ServiceImpl<AdamEntersMapper, AdamEnt
...
@@ -71,32 +71,33 @@ public class AdamEntersServiceImpl extends ServiceImpl<AdamEntersMapper, AdamEnt
@Override
@Override
@Transactional
(
propagation
=
Propagation
.
REQUIRED
,
rollbackFor
=
Exception
.
class
)
@Transactional
(
propagation
=
Propagation
.
REQUIRED
,
rollbackFor
=
Exception
.
class
)
public
void
add
(
AdamEnters
info
)
{
public
void
add
(
AdamEnters
info
)
{
if
(
info
.
getIsDefault
())
{
// if (info.getIsDefault()) {
Set
<
Object
>
keys
=
(
Set
<
Object
>)
redisUtil
.
hkeys
(
AdamRedisConst
.
INFO_ENTERS
.
concat
(
info
.
getUid
()));
// Set<Object> keys = (Set<Object>) redisUtil.hkeys(AdamRedisConst.INFO_ENTERS.concat(info.getUid()));
if
(!
CollectionUtils
.
isEmpty
(
keys
))
{
// if (!CollectionUtils.isEmpty(keys)) {
AdamEnters
deaultEnters
=
new
AdamEnters
();
// AdamEnters deaultEnters = new AdamEnters();
deaultEnters
.
setIsDefault
(
false
);
// deaultEnters.setIsDefault(false);
deaultEnters
.
setUpdatedAt
(
info
.
getCreatedAt
());
// deaultEnters.setUpdatedAt(info.getCreatedAt());
deaultEnters
.
setUid
(
info
.
getUid
());
// deaultEnters.setUid(info.getUid());
BasicDBObject
object
=
new
BasicDBObject
(
"$set"
,
mongoConverter
.
convertToMongoType
(
deaultEnters
));
// BasicDBObject object = new BasicDBObject("$set", mongoConverter.convertToMongoType(deaultEnters));
Document
doc
=
mongoTemplate
.
getCollection
(
AdamEnters
.
class
.
getSimpleName
()).
findOneAndUpdate
(
// Document doc = mongoTemplate.getCollection(AdamEnters.class.getSimpleName()).findOneAndUpdate(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
deaultEnters
.
getUid
()).
and
(
"isDefault"
).
is
(
true
)).
getQueryObject
(),
// Query.query(Criteria.where("uid").is(deaultEnters.getUid()).and("isDefault").is(true)).getQueryObject(),
object
,
new
FindOneAndUpdateOptions
().
returnDocument
(
ReturnDocument
.
AFTER
)
// object, new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
// );
//
if
(
null
!=
doc
)
{
// if (null != doc) {
List
<
Object
>
paramList
=
new
ArrayList
<>();
// List<Object> paramList = new ArrayList<>();
paramList
.
add
(
deaultEnters
.
getIsDefault
());
// paramList.add(deaultEnters.getIsDefault());
paramList
.
add
(
deaultEnters
.
getUpdatedAt
());
// paramList.add(deaultEnters.getUpdatedAt());
paramList
.
add
(
doc
.
get
(
"uid"
));
// paramList.add(doc.get("uid"));
rabbitTemplate
.
convertAndSend
(
MQConst
.
EXCHANGES_LIQUIDNET_SQL
,
MQConst
.
ROUTING_KEY_SQL
,
// rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping
.
get
(
"adam_enters.update.is_default"
,
paramList
.
toArray
()));
// SqlMapping.get("adam_enters.update.is_default", paramList.toArray()));
//
AdamEnters
enters
=
BsonUtil
.
toBean
(
doc
,
AdamEnters
.
class
);
// AdamEnters enters = BsonUtil.toBean(doc, AdamEnters.class);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_ENTERS
.
concat
(
enters
.
getUid
()),
enters
.
getEntersId
(),
enters
);
// redisUtil.hset(AdamRedisConst.INFO_ENTERS.concat(enters.getUid()), enters.getEntersId(), enters);
}
// }
}
// }
}
// }
info
.
setIsDefault
(
CollectionUtils
.
isEmpty
(
this
.
list
(
info
.
getUid
())));
mongoTemplate
.
insert
(
Collections
.
singletonList
(
info
),
AdamEnters
.
class
.
getSimpleName
());
mongoTemplate
.
insert
(
Collections
.
singletonList
(
info
),
AdamEnters
.
class
.
getSimpleName
());
...
...
liquidnet-bus-support/liquidnet-support-zuul/src/main/java/com/liquidnet/support/zuul/filter/GlobalAuthFilter.java
View file @
21b4196a
...
@@ -41,7 +41,8 @@ public class GlobalAuthFilter extends ZuulFilter {
...
@@ -41,7 +41,8 @@ public class GlobalAuthFilter extends ZuulFilter {
public
boolean
shouldFilter
()
{
public
boolean
shouldFilter
()
{
RequestContext
ctx
=
RequestContext
.
getCurrentContext
();
RequestContext
ctx
=
RequestContext
.
getCurrentContext
();
String
requestURI
=
ctx
.
getRequest
().
getRequestURI
();
String
requestURI
=
ctx
.
getRequest
().
getRequestURI
();
return
!
excludeUrls
.
contains
(
requestURI
);
// return !excludeUrls.contains(requestURI);
return
false
;
}
}
@Override
@Override
...
...
liquidnet-bus-support/liquidnet-support-zuul/src/main/java/com/liquidnet/support/zuul/filter/GlobalLoginFilter.java
View file @
21b4196a
package
com
.
liquidnet
.
support
.
zuul
.
filter
;
package
com
.
liquidnet
.
support
.
zuul
.
filter
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.adam.dto.AdamThirdPartParam
;
import
com.liquidnet.service.adam.dto.vo.AdamLoginInfoVo
;
import
com.liquidnet.service.adam.dto.vo.AdamLoginInfoVo
;
import
com.liquidnet.service.feign.adam.api.FeignAdamLoginClient
;
import
com.liquidnet.service.feign.adam.api.FeignAdamLoginClient
;
import
com.liquidnet.support.zuul.util.PathMatchUtil
;
import
com.liquidnet.support.zuul.util.PathMatchUtil
;
import
com.netflix.zuul.ZuulFilter
;
import
com.netflix.zuul.ZuulFilter
;
import
com.netflix.zuul.context.RequestContext
;
import
com.netflix.zuul.context.RequestContext
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Slf4j
@Slf4j
@Component
@Component
...
@@ -38,11 +41,11 @@ public class GlobalLoginFilter extends ZuulFilter {
...
@@ -38,11 +41,11 @@ public class GlobalLoginFilter extends ZuulFilter {
public
boolean
shouldFilter
()
{
public
boolean
shouldFilter
()
{
RequestContext
ctx
=
RequestContext
.
getCurrentContext
();
RequestContext
ctx
=
RequestContext
.
getCurrentContext
();
String
requestURI
=
ctx
.
getRequest
().
getRequestURI
();
String
requestURI
=
ctx
.
getRequest
().
getRequestURI
();
for
(
String
url
:
loginUrls
)
{
//
for (String url : loginUrls) {
if
(
PathMatchUtil
.
isPathMatch
(
url
,
requestURI
))
{
//
if (PathMatchUtil.isPathMatch(url, requestURI)) {
return
true
;
//
return true;
}
//
}
}
//
}
return
false
;
return
false
;
}
}
...
@@ -51,10 +54,10 @@ public class GlobalLoginFilter extends ZuulFilter {
...
@@ -51,10 +54,10 @@ public class GlobalLoginFilter extends ZuulFilter {
RequestContext
requestContext
=
RequestContext
.
getCurrentContext
();
RequestContext
requestContext
=
RequestContext
.
getCurrentContext
();
HttpServletRequest
servletRequest
=
requestContext
.
getRequest
();
HttpServletRequest
servletRequest
=
requestContext
.
getRequest
();
String
token
=
servletRequest
.
getHeader
(
"authorization"
);
//
String token = servletRequest.getHeader("authorization");
if
(
StringUtils
.
isNotBlank
(
token
))
{
//
if (StringUtils.isNotBlank(token)) {
requestContext
.
addZuulResponseHeader
(
"authorization"
,
token
);
//
requestContext.addZuulResponseHeader("authorization", token);
}
//
}
ResponseDto
<
AdamLoginInfoVo
>
responseDto
=
null
;
ResponseDto
<
AdamLoginInfoVo
>
responseDto
=
null
;
switch
(
servletRequest
.
getRequestURI
())
{
switch
(
servletRequest
.
getRequestURI
())
{
...
@@ -65,12 +68,19 @@ public class GlobalLoginFilter extends ZuulFilter {
...
@@ -65,12 +68,19 @@ public class GlobalLoginFilter extends ZuulFilter {
responseDto
=
feignAdamLoginClient
.
loginByMobile
(
servletRequest
.
getParameter
(
"accessToken"
));
responseDto
=
feignAdamLoginClient
.
loginByMobile
(
servletRequest
.
getParameter
(
"accessToken"
));
break
;
break
;
case
"/adam/login/tpa"
:
case
"/adam/login/tpa"
:
String
body
=
null
;
try
{
body
=
servletRequest
.
getReader
().
lines
().
collect
(
Collectors
.
joining
(
System
.
lineSeparator
()));
}
catch
(
IOException
e
)
{
log
.
error
(
"reader request body exception"
,
e
);
}
responseDto
=
feignAdamLoginClient
.
loginByTpa
(
JsonUtils
.
fromJson
(
body
,
AdamThirdPartParam
.
class
));
break
;
break
;
default
:
default
:
log
.
warn
(
"###无效的登录链接:{}"
,
servletRequest
.
getRequestURI
());
log
.
warn
(
"###无效的登录链接:{}"
,
servletRequest
.
getRequestURI
());
break
;
break
;
}
}
log
.
debug
(
"login request result:{}"
,
JsonUtils
.
toJson
(
responseDto
));
return
null
;
return
null
;
}
}
}
}
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