diff --git a/src/main/java/com/mark/controller/common/interceptor/AdminInterceptor.java b/src/main/java/com/mark/controller/common/interceptor/AdminInterceptor.java index ee4ff884b39a3d8e012983f32f1493cda421d4b7..a26500f1c38bc64d6f8afb9e6a648f40443cffba 100644 --- a/src/main/java/com/mark/controller/common/interceptor/AdminInterceptor.java +++ b/src/main/java/com/mark/controller/common/interceptor/AdminInterceptor.java @@ -5,6 +5,7 @@ import com.mark.common.ServerResponse; import com.mark.pojo.Admin; import com.mark.util.CookieUtil; import com.mark.util.JsonUtil; +import com.mark.util.PropertiesUtil; import com.mark.util.RedisShardedPoolUtil; import org.apache.commons.lang3.StringUtils; import org.springframework.web.servlet.HandlerInterceptor; @@ -21,30 +22,33 @@ import java.util.Map; * 实现的功能是如果是以admin身份进来,不能执行写操作 */ public class AdminInterceptor implements HandlerInterceptor { + final String Origin = PropertiesUtil.getProperty("admin.origin"); + @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { - request.setCharacterEncoding("utf-8");//防止请求信息的中文乱码 - Admin currentAdmin = null; - String adminLoginToken = CookieUtil.readAdminLoginToken(request); - if (StringUtils.isNotEmpty(adminLoginToken)) { - String adminJsonStr = RedisShardedPoolUtil.get(adminLoginToken); - currentAdmin = JsonUtil.string2Obj(adminJsonStr, Admin.class); - } - if (currentAdmin == null) { - PrintWriter out = response.getWriter(); - out.print(JsonUtil.obj2String(ServerResponse.createByNeedLogin())); - out.flush(); - out.close();// 这里要关闭 - return false; - } else if (currentAdmin.getAdminName().equals("admin")) { - PrintWriter out = response.getWriter(); - Map resultMap = Maps.newHashMap(); - resultMap.put("status", 1); - resultMap.put("msg", "Sorry !The operation failed because you did not have permission"); - out.print(JsonUtil.obj2String(resultMap)); - out.flush(); - out.close();// 这里要关闭 - return false; + if (request.getHeader("Origin").equals(Origin)) { + Admin currentAdmin = null; + String adminLoginToken = CookieUtil.readAdminLoginToken(request); + if (StringUtils.isNotEmpty(adminLoginToken)) { + String adminJsonStr = RedisShardedPoolUtil.get(adminLoginToken); + currentAdmin = JsonUtil.string2Obj(adminJsonStr, Admin.class); + } + if (currentAdmin == null) { + PrintWriter out = response.getWriter(); + out.print(JsonUtil.obj2String(ServerResponse.createByNeedLogin())); + out.flush(); + out.close();// 这里要关闭 + return false; + } else if (currentAdmin.getAdminName().equals("admin")) { + PrintWriter out = response.getWriter(); + Map resultMap = Maps.newHashMap(); + resultMap.put("status", 1); + resultMap.put("msg", "Sorry !The operation failed because you did not have permission"); + out.print(JsonUtil.obj2String(resultMap)); + out.flush(); + out.close();// 这里要关闭 + return false; + } } return true; } diff --git a/src/main/java/com/mark/controller/common/interceptor/AuthorityInterceptor.java b/src/main/java/com/mark/controller/common/interceptor/AuthorityInterceptor.java index 1fdd490c6631151a333ccd45420af54403a9e48b..cafd6f600b322f793b94315887d09d57b654fe4b 100644 --- a/src/main/java/com/mark/controller/common/interceptor/AuthorityInterceptor.java +++ b/src/main/java/com/mark/controller/common/interceptor/AuthorityInterceptor.java @@ -27,6 +27,8 @@ import java.util.Map; */ @Slf4j public class AuthorityInterceptor implements HandlerInterceptor{ + + @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { HandlerMethod handlerMethod = (HandlerMethod) handler; diff --git a/src/main/resources/spring/spring-other.xml b/src/main/resources/spring/spring-other.xml index 84b0acdfba8f906a76421585cbf1dfacf992e71b..ebb13565f0b433706da85622c9959b44f20999b9 100644 --- a/src/main/resources/spring/spring-other.xml +++ b/src/main/resources/spring/spring-other.xml @@ -33,6 +33,7 @@ +