|
@@ -51,17 +51,17 @@ public class TokenFilter implements Filter {
|
|
|
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
|
|
|
throws IOException, ServletException {
|
|
|
HttpServletRequest request = (HttpServletRequest) servletRequest;
|
|
|
- HttpServletResponse response = (HttpServletResponse) servletResponse;
|
|
|
|
|
|
|
|
|
- String deviceId = request.getHeader(Constants.PARAM_DEVICE_ID);
|
|
|
+
|
|
|
if (StringUtils.isBlank(deviceId)) {
|
|
|
Result result = new Result().error("[APP] deviceId must be not empty.");
|
|
|
+ HttpServletResponse response = (HttpServletResponse) servletResponse;
|
|
|
this.render(response, result.toString());
|
|
|
return;
|
|
|
- }
|
|
|
+ }*/
|
|
|
|
|
|
- CustomHttpServletRequest customRequest = this.initCustomRequest(request, deviceId);
|
|
|
+ CustomHttpServletRequest customRequest = this.initCustomRequest(request);
|
|
|
if (customRequest != null) {
|
|
|
filterChain.doFilter(customRequest, servletResponse);
|
|
|
return;
|
|
@@ -69,10 +69,11 @@ public class TokenFilter implements Filter {
|
|
|
filterChain.doFilter(servletRequest, servletResponse);
|
|
|
}
|
|
|
|
|
|
- private CustomHttpServletRequest initCustomRequest(HttpServletRequest request, String deviceId) {
|
|
|
+ private CustomHttpServletRequest initCustomRequest(HttpServletRequest request) {
|
|
|
String key = request.getHeader(Constants.PARAM_KEY);
|
|
|
- if (StringUtils.isBlank(key)) {
|
|
|
-
|
|
|
+ String appToken = request.getHeader(Constants.PARAM_TOKEN);
|
|
|
+ if (StringUtils.isBlank(key) || StringUtils.isBlank(appToken)) {
|
|
|
+
|
|
|
return null;
|
|
|
}
|
|
|
|
|
@@ -83,22 +84,17 @@ public class TokenFilter implements Filter {
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ if (!appToken.equals(loginInfo.getAppToken())) {
|
|
|
+
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
CustomHttpServletRequest customRequest = new CustomHttpServletRequest(request);
|
|
|
if (!this.filterAccessUrl(request.getServletPath())) {
|
|
|
-
|
|
|
- if (deviceId.equals(loginInfo.getDeviceId())) {
|
|
|
-
|
|
|
- if (loginInfo.hasExpired(PLATFORM_SESSION_EXPIRE_TIME)) {
|
|
|
-
|
|
|
- this.reLogin(loginInfo);
|
|
|
- }
|
|
|
- } else {
|
|
|
-
|
|
|
- if (!loginInfo.hasExpired(PLATFORM_SESSION_EXPIRE_TIME)) {
|
|
|
- return null;
|
|
|
- }
|
|
|
- loginInfo.setDeviceId(deviceId);
|
|
|
+ if (loginInfo.hasExpired(PLATFORM_SESSION_EXPIRE_TIME)) {
|
|
|
+
|
|
|
this.reLogin(loginInfo);
|
|
|
}
|
|
|
}
|