《web应用技术》第十一次作业

1、验证过滤器进行权限验证的原理。

代码展示:

@Slf4j

@WebFilter(urlPatterns = "/*")

public class LoginCheckFilter implements Filter {

@Override

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {

HttpServletRequest req = (HttpServletRequest) request;

HttpServletResponse resp = (HttpServletResponse) response;

String url = req.getRequestURL().toString();

log.info("请求的url: {}",url);

if(url.contains("login")){

log.info("登录操作, 放行...");

chain.doFilter(request,response);

return;

}

String jwt = req.getHeader("token");

if(!StringUtils.hasLength(jwt)){

log.info("请求头token为空,返回未登录的信息");

Result error = Result.error("NOT_LOGIN");

String notLogin = JSONObject.toJSONString(error);

resp.getWriter().write(notLogin);

return;

}

try {

JwtUtils.parseJWT(jwt);

} catch (Exception e) {//jwt解析失败

e.printStackTrace();

log.info("解析令牌失败, 返回未登录错误信息");

Result error = Result.error("NOT_LOGIN");

String notLogin = JSONObject.toJSONString(error);

resp.getWriter().write(notLogin);

return;

}

log.info("令牌合法, 放行");

chain.doFilter(request, response);

}

}

2、Apifox的使用

3、Git的继续使用

相关推荐
卓码软件测评几秒前
【第三方网站运行环境测试:服务器配置(如Nginx/Apache)的WEB安全测试重点】
运维·服务器·前端·网络协议·nginx·web安全·apache
龙在天2 分钟前
前端不求人系列 之 一条命令自动部署项目
前端
自由的疯2 分钟前
Java 实现TXT文件导入功能
java·后端·架构
开开心心就好2 分钟前
PDF转长图工具,一键多页转图片
java·服务器·前端·数据库·人工智能·pdf·推荐算法
现在没有牛仔了5 分钟前
SpringBoot实现操作日志记录完整指南
java·spring boot·后端
国家不保护废物8 分钟前
10万条数据插入页面:从性能优化到虚拟列表的终极方案
前端·面试·性能优化
小蒜学长10 分钟前
基于django的梧桐山水智慧旅游平台设计与开发(代码+数据库+LW)
java·spring boot·后端·python·django·旅游
浮游本尊16 分钟前
Java学习第16天 - 分布式事务与数据一致性
java
文心快码BaiduComate23 分钟前
七夕,画个动态星空送给Ta
前端·后端·程序员
web前端12327 分钟前
# 多行文本溢出实现方法
前端·javascript