IT修真院·坑乎 | Java(后端),CSS(前端),JavaScript(前端),PM(产品经理),UI(交互设计),QA(测试),Android(安卓APP),iOS(苹果APP),OP(运维),Python(后端)日常在线问答学习平台
咨询电话 : 010-59478634
切换导航
首页
我的提问
我的回答
我的点赞
消息通知
个人主页
×
提示
尚未登陆,前往官网登陆?
×
提示
尚未登陆,前往官网登陆?
CSS
JS
Android
IOS
JAVA
OP
PM
UI
QA
求职辅导
Python
运营
动画师
AIGC
亚马逊运营
CSS
JS
Android
IOS
JAVA
OP
PM
UI
QA
求职辅导
Python
运营
动画师
AIGC
亚马逊运营
所有任务
任务1
任务2
任务3
任务4
任务5
任务6
任务7
任务8
任务9
任务10
任务11
全部
问题
已收录
问题
未收录
问题
没有找到答案,去提问>>>
在使用des加密的时候key值是自己写死好,还是使用随机生成好?
2
2
md5/des
class="cursor-pointer"> 详细描述
在使用des加密的时候key值是自己写死好,还是使用随机生成好?自己写死就会用固定值,随机生成的话,就要把生成的key值存入数据库中,在使用的时候再从数据库中取出来,过了一个操作数据库的过程
在创建拦截器之后运行程序,报错。
1
2
interceptor
class="cursor-pointer"> 详细描述
已经完成登录和退出的基本模型,但是任务被打回来,说没有注册的空用户名校验(这个可以接受),和登录的状态显示(这个不归我写),最后,登录没有错误提示,错误就会重新刷新页面(我也接受),于是我加了一个校验器和一个result类返回错误信息,然后写了一个单独的错误信息页面(这个我不想写了,就返回的json)于是写完再运行出现了org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#6b3a053b': Cannot resolve reference to bean 'conversionService' while setting constructor argument; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'conversionService' available这个错误。
class="cursor-pointer"> 错误截图
我容器启动正常,可以访问holle world,但是在访问主页的时候出现了这个错误。
JJWT产生token是需要前台在用户调用登录方法的时候就建立吗?
1
1
class="cursor-pointer"> 详细描述
最近刚看任务五JJWT产生token对于产生的过程和调用的过程有些不连贯,有没有一个整体的流程?
如何设置拦截器
1
1
interceptor
class="cursor-pointer"> 详细描述
如何设置拦截器,对未登录的用户访问登陆后的页面进行拦截
class="cursor-pointer"> 错误截图
为什么要对用户名和登录时间进行DES加密
1
1
md5/des
class="cursor-pointer"> 详细描述
可以使用其他加密吗,或者说可以加密其他属性吗
拦截器不起作用
1
1
interceptor
class="cursor-pointer"> 详细描述
拦截器拦截不到指定的页面
class="cursor-pointer"> 源码
public class LoginInterceptor implements HandlerInterceptor { private static Logger logger = Logger.getLogger(LoginInterceptor.class); @Autowired UserService userService; //ture表示继续流程,false表示中断流程,不会继续调用拦截器 @Override public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception { //获取request的cookie Cookie[] cookies = httpServletRequest.getCookies(); //如果httpServletRequest里的cookies为空,就从httpServletResponse的header拿token.拿到后解析 //如果cookies的长度等于0,表示没有cookies,返回登录页面,让用户登录一下,发给用户一个cookie,下次光临的时候用户就有cookie了 if (cookies == null && cookies.length > 0){ logger.info("don't have cookie"); //从httpServletRequest.getHeader拿出token,然后解密 String token = httpServletRequest.getHeader("token"); DesUtil desUtil = new DesUtil(); //取出明文 String mw = desUtil.decrypt(token); //分割字符串 String[] fg = mw.split("\\|"); logger.info("时间戳:"+fg[0].toString()); //取出数字 String timeStamp = fg[0]; Long time = desUtil.decryptToLong(timeStamp); logger.info("时间:"+time); //判断时间戳是否过期 if (System.currentTimeMillis()- time >= 60 * 60 * 1000){ logger.info("token过期"); httpServletResponse.sendRedirect("/goLogin"); return false; } else { String ids = fg[2]; logger.info("用户id:"+ids); Long idis = desUtil.decryptToLong(ids); logger.info("id是:" +idis); //判断是否合法 User user =userService.selectById(idis); logger.info("查到的数据:"+user); //如果为空,就返回登录页面 if (user==null){ httpServletResponse.sendRedirect("/goLogin"); return false; } return true; } }else { logger.info("you have cookie"); //遍历cookies,放入cookie看下是否对应 for (int i = 0; i < cookies.length; i++){ logger.info("cookieName:"+cookies[i].getName()); logger.info("cookieValue"+cookies[i].getValue()); //如果他的cookie与我给他发的token名字相等,那么可以返到页面里 if (cookies[i].getName().equals("token")){ logger.info("token:"+cookies[i].getValue()); String token = cookies[i].getValue(); //解token,取出id 判断id是否不为空, 不为空,去数据库里查这个id对应的用户是否存在,存在通过拦截器,不存在返回 DesUtil desUtil = new DesUtil(); //取出token明文 String mw = desUtil.decrypt(token); String[] str = mw.split("\\|"); String timeStamp = str[0]; Long time = Long.valueOf(timeStamp); if (System.currentTimeMillis() - time>= 60*60 *1000) { logger.info("token过期"); //返回登录页面 httpServletResponse.sendRedirect("/goLogin"); return false; } String idstr = str[2]; Long id = Long.valueOf(idstr); User user = userService.selectById(id); if (user==null){ httpServletResponse.sendRedirect("/goLogin"); return false; } } return true; } } //没有找到登录状态则重定向回登录页面,返回false,不执行controller的方法 httpServletResponse.sendRedirect("/goLogin"); return false; }
interceptor要怎么使用,会达到什么效果?
1
1
interceptor
class="cursor-pointer"> 详细描述
filter现在只用于过滤请求编码格式,interceptor要怎么使用,达到什么效果才是正确的使用了interceptor?
tomcat集群同步
1
1
会话管理
class="cursor-pointer"> 详细描述
服务器端两个tomcat加nginx实现负载均衡,登录问题的话如何实现两个服务器同步,看到网上说用memcache,但是并发大的时候不太好用,请问还有其他的什么好的方法吗
拦截器拦截的时候,请求带的cookie,只有这个网页的cookie还是所有的
0
1
class="cursor-pointer"> 详细描述
拦截器拦截的时候,请求带的cookie,只有这个网页的cookie还是所有的cookie?
1.服务器上的token存储到数据库中,每次查询会不会很费时。
1
1
会话管理
class="cursor-pointer"> 详细描述
1.服务器上的token存储到数据库中,每次查询会不会很费时。如果不存储到数据库,应该存储到哪里呢。 2.客户端得到的token肯定要加密存储的,发送token的时候再解密。存储到数据库还是配置文件呢?
首页
1
2
3
4
>
末页
去第
页
确定
Copyright ©2015 北京葡萄藤信息技术有限公司 All Rights Reserved | 京ICP备15035574号-1
52
5
0
10