Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
customer-service
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
QG
customer-service
Commits
1a1bebd6
Commit
1a1bebd6
authored
Apr 20, 2020
by
杨钧
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
异常处理
parent
4d8013f9
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
32 additions
and
2 deletions
+32
-2
ValidOperatePermitFilter.java
...omer/config/http/mvc/filter/ValidOperatePermitFilter.java
+32
-2
No files found.
src/main/java/cn/quantgroup/customer/config/http/mvc/filter/ValidOperatePermitFilter.java
View file @
1a1bebd6
...
@@ -6,6 +6,7 @@ import cn.quantgroup.customer.enums.ErrorCodeEnum;
...
@@ -6,6 +6,7 @@ import cn.quantgroup.customer.enums.ErrorCodeEnum;
import
cn.quantgroup.customer.exception.ValidTokenException
;
import
cn.quantgroup.customer.exception.ValidTokenException
;
import
cn.quantgroup.customer.rest.vo.JsonResult
;
import
cn.quantgroup.customer.rest.vo.JsonResult
;
import
cn.quantgroup.customer.service.IOpSystemService
;
import
cn.quantgroup.customer.service.IOpSystemService
;
import
com.alibaba.fastjson.JSONObject
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -16,6 +17,7 @@ import javax.servlet.*;
...
@@ -16,6 +17,7 @@ import javax.servlet.*;
import
javax.servlet.annotation.WebFilter
;
import
javax.servlet.annotation.WebFilter
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.PrintWriter
;
import
java.util.Objects
;
import
java.util.Objects
;
/**
/**
...
@@ -49,14 +51,18 @@ public class ValidOperatePermitFilter implements Filter {
...
@@ -49,14 +51,18 @@ public class ValidOperatePermitFilter implements Filter {
String
system
=
request
.
getHeader
(
"x-auth-system"
);
String
system
=
request
.
getHeader
(
"x-auth-system"
);
if
(
StringUtils
.
isAnyBlank
(
token
,
system
))
{
if
(
StringUtils
.
isAnyBlank
(
token
,
system
))
{
log
.
error
(
"缺少token信息,拦截"
);
log
.
error
(
"缺少token信息,拦截"
);
throw
new
ValidTokenException
(
ErrorCodeEnum
.
NO_TOKEN
);
//throw new ValidTokenException(ErrorCodeEnum.NO_TOKEN);
renderErrorMsg
(
servletResponse
,
ErrorCodeEnum
.
NO_TOKEN
);
return
;
}
}
JsonResult
<
OpUser
>
opUserResult
=
IOpSystemService
.
findUserByToken
(
token
,
system
);
JsonResult
<
OpUser
>
opUserResult
=
IOpSystemService
.
findUserByToken
(
token
,
system
);
if
(
Objects
.
isNull
(
opUserResult
)
||
!
opUserResult
.
isSuccess
())
{
if
(
Objects
.
isNull
(
opUserResult
)
||
!
opUserResult
.
isSuccess
())
{
log
.
error
(
"根据token查询不到用户信息 token:{}"
,
token
);
log
.
error
(
"根据token查询不到用户信息 token:{}"
,
token
);
// filter中异常无法捕获
// filter中异常无法捕获
throw
new
ValidTokenException
(
ErrorCodeEnum
.
ILLEGAL_TOKEN
);
//throw new ValidTokenException(ErrorCodeEnum.ILLEGAL_TOKEN);
renderErrorMsg
(
servletResponse
,
ErrorCodeEnum
.
ILLEGAL_TOKEN
);
return
;
}
else
{
}
else
{
OpUser
opUser
=
opUserResult
.
getData
();
OpUser
opUser
=
opUserResult
.
getData
();
UserThreadLocal
.
set
(
opUser
);
UserThreadLocal
.
set
(
opUser
);
...
@@ -66,6 +72,30 @@ public class ValidOperatePermitFilter implements Filter {
...
@@ -66,6 +72,30 @@ public class ValidOperatePermitFilter implements Filter {
filterChain
.
doFilter
(
servletRequest
,
servletResponse
);
filterChain
.
doFilter
(
servletRequest
,
servletResponse
);
}
}
/**
* 处理返回json格式数据
* @param servletResponse
* @param codeEnum
*/
private
void
renderErrorMsg
(
ServletResponse
servletResponse
,
ErrorCodeEnum
codeEnum
)
{
servletResponse
.
setCharacterEncoding
(
"utf-8"
);
PrintWriter
out
=
null
;
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"code"
,
codeEnum
.
getCode
());
jsonObject
.
put
(
"msg"
,
codeEnum
.
getMessage
());
try
{
out
=
servletResponse
.
getWriter
();
servletResponse
.
setContentType
(
"application/json; charset=utf-8"
);
out
.
print
(
jsonObject
);
out
.
flush
();
out
.
close
();
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
log
.
error
(
"处理转换信息异常:{}"
,
e
.
getMessage
());
}
}
@Override
@Override
public
void
destroy
()
{
public
void
destroy
()
{
...
...
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