|
@@ -1,6 +1,5 @@
|
|
|
package beilv.framework.shiro.web.filter.wxMiniAppAccessControlFilter;
|
|
|
|
|
|
-import beilv.common.utils.StringUtils;
|
|
|
import beilv.common.utils.rsa.RsaUtil;
|
|
|
import beilv.system.domain.SysMember;
|
|
|
import beilv.system.mapper.SysMemberMapper;
|
|
@@ -15,9 +14,6 @@ import javax.servlet.ServletResponse;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
|
-import static beilv.common.enums.ErrorCodeConstants.USER_NOT_EXISTS;
|
|
|
-import static beilv.common.utils.ExceptionUtil.exception;
|
|
|
-
|
|
|
@Slf4j
|
|
|
@Component
|
|
|
public class WxMiniAppAccessControlFilter extends AccessControlFilter {
|
|
@@ -33,12 +29,13 @@ public class WxMiniAppAccessControlFilter extends AccessControlFilter {
|
|
|
@Override
|
|
|
protected boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue) throws Exception {
|
|
|
HttpServletRequest httpRequest = (HttpServletRequest) request;
|
|
|
+ response.setContentType("application/json; charset=UTF-8"); // 设置内容类型和字符编码
|
|
|
+ response.setCharacterEncoding("UTF-8"); // 设置字符编码
|
|
|
// 这里可以添加你的自定义验证逻辑
|
|
|
String token = httpRequest.getHeader("accessToken");
|
|
|
// 验证 token,返回 true 表示允许访问
|
|
|
- if (null == token || !isValidToken(token)) {
|
|
|
-// throw new Exception("123123123");// 默认不允许访问
|
|
|
- response.getWriter().write("{\"message\": \"false!\"}");
|
|
|
+ if (null == token || isValidToken(token)) {
|
|
|
+ response.getWriter().write("{\"message\": \"用户不存在!\"}");
|
|
|
return false;
|
|
|
} else {
|
|
|
return true;
|
|
@@ -54,14 +51,14 @@ public class WxMiniAppAccessControlFilter extends AccessControlFilter {
|
|
|
return false; // 拒绝访问
|
|
|
}
|
|
|
|
|
|
- private boolean isValidToken(String token){
|
|
|
+ private boolean isValidToken(String token) {
|
|
|
// 在这里实现你的 token 验证逻辑
|
|
|
String str;
|
|
|
try {
|
|
|
str = RsaUtil.decrypt(token, privateKey);
|
|
|
//根据userId从数据库中查询用户信息,判断用户是否存在,如果不存在,则返回false,表示拒绝访问;如果存在,则返回true,表示放行访问
|
|
|
SysMember sysMember = sysMemberMapper.selectSysMemberById(Long.parseLong(str));
|
|
|
- return ObjectUtils.isNotEmpty(sysMember);
|
|
|
+ return ObjectUtils.isEmpty(sysMember);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
return false;
|