发表于: 2017-10-22 23:21:48

1 827


今日完成:


为后续方便测试,开放服务器上数据库端口3306

对LINUX服务器中的数据库root用户进行授权访问.


更改Url请求路径使用rest风格,但这里要注意一个问题

这里测试时没用ajax,直接使用form表格使用POST提交,在对方法使用hidden进行影藏,如下

再web.xml中添加该滤器后,对controller访问之后进行return,如果方法为put或delete那么一定要进行重定向,而不是转发!

重定向后将请求方式变为默认GET,这样就不会报错405了. 天坑一个!



任务4的坑差不多填完,继续任务5

首先想实现一个自动登录功能,在第一次手动登录时,使用cookie将用户名加"",""加密后的密码存放,以逗号分割,这里注意存取cookie中存在中文的问题

模拟Demo

// 模拟Cookie
Cookie cookie1 = new Cookie("num", "001");
Cookie cookie2 = new Cookie("name", URLEncoder.encode("张三", "UTF-8"));
response.addCookie(cookie1);
response.addCookie(cookie2);

// 获取Cookie
Cookie[] cookies = request.getCookies();
String cookieNum = "";
String cookieName = "";
for (Cookie cookie : cookies)
{
 if ("num".equals(cookie.getName()))
 {
  cookieNum = cookie.getValue();
 }
 else if ("name".equals(cookie.getName()))
 {
  cookieName = URLDecoder.decode(cookie.getValue(), "UTF-8");
 }
}


后台代码如下

测试结果


OK,在首页登录时进行校验,在校验过程发现死活取不到cookie


仔细看


呵呵一看就是spring mvc做的好事,因为当前url请求拦截前缀为/Desk,不手动指定Cookie路径它就自动给你赋值路径前缀,意思就是只有当url路径中有/Desk时,Cookie才会被一起带到请求中,否则gaygay

解决如下:在设置cookie是手动添加路径


自动登录代码如下


测试成功后,再使用des对id+时间加密生成token放入cookie,这里注意将加密后的字符串需要进行手动转码,否则无法传入cookie中!


还有为了防止登出后再进行自动登录,这里要手动清除cookie!

最后进行权限验证,这里对cookie中的token解码和解密除了点问题,貌似交不了..


明日计划:完成task5


问题:如上


收获:各种坑慢慢踩



返回列表 返回列表
评论

    分享到