第一篇博客关于easyUI和shiro使用时遇到的问题

easyUI和shiro同时使用时,shiro只对action进行登录角色判断,easyUI是先渲染div再发送URL请求.如果想在添加权限时做角色允许判断怎么解决?

解决办法:使用cookie解决,在前端HTML增加一个逻辑判断

首先在HTML中添加<script type='text/javascript' src='../jquery.cookie.js'></scrip>

本人是封装了一个custom.js的一个文件用于引用:如下图:

document.write("<link rel='stylesheet' type='text/css' href='../easyuijscss/easyui.css'>" +
        "<link rel='stylesheet' type='text/css' href='../easyuijscss/icon.css'>" +
        "<link rel='stylesheet' type='text/css' href='../easyuijscss/demo.css'>" +
        "<script type='text/javascript' src='../easyuijscss/jquery.min.js'></script>" +
        "<script type='text/javascript' src='../easyuijscss/jquery.cookie.js'></script>" +
        "<script type='text/javascript' src='../easyuijscss/jquery.easyui.min.js'></script>" +
        "<script type='text/javascript' src='../easyuijscss/easyui-lang-zh_CN.js'></script>");



function getPath() {
    var pathName = document.location.pathname;
    var index = pathName.substr(1).indexOf("/");
    var result = pathName.substr(0, index + 1);
    return document.location.protocol + '//' + document.location.host + result;
}

var role=null;

前端代码:

<table id="tt">
    <!-- 工具栏 -->
    <div id="toolbar" style="margin: 2px">
        <fieldset style="margin: 10px;">
            <form id="sff">
第一步: <a class="easyui-linkbutton" iconCls="icon-add" plain="false" οnclick="openNewRecord()">添加新记录</a> <a id="refresh" class="easyui-linkbutton" iconCls="icon-reload" οnclick="refreshTable()">刷新</a> <a class="easyui-linkbutton" iconCls="icon-remove" plain="false" οnclick="openRemoveRecord()">批量删除</a> &nbsp; <span>工厂: </span><input id="mb_factory_name" style="width: 70px;border-radius:2px;"> <span>款号: </span><input id="mb_style_num" style="width: 70px;border-radius:2px;"> <a class="easyui-linkbutton" iconCls="icon-search" plain="false" οnclick="searchRecord()"></a> </form> </fieldset> <script type="text/javascript"> //刷新表单 function refreshTable() { $("#tt").datagrid("reload"); }
第二步:
//用户角色 $(function(){ role =$.cookie('roleName'); alert(role); }) 第三步: function openNewRecord() { if(role!="临时用户"){ console.info("打开添加界面"); $("#add").dialog('open'); } } function searchRecord() { console.info("进行搜索"); $("#tt").datagrid('load',{ mb_factory_name: $('#mb_factory_name').val(), mb_style_num: $('#mb_style_num').val() }); } </script> </div> </table>

controller层代码:

/**
     * shiro框架的用户登录认证
     */
    @RequestMapping("/login")
    public String login(String username,String password,HttpServletResponse response){
        User login = userService.login(username);
        UsernamePasswordToken token=new UsernamePasswordToken(username,password);
        try{
            SecurityUtils.getSubject().login(token);
            
            //用户信息存入cookie
            Role selectByUsername = userService.selectByUsername(username);
            Cookie cookie = new Cookie("roleName", selectByUsername.getRole_name());
            cookie.setMaxAge(Integer.MAX_VALUE);
      //要设置cookie保存路径/应用程序名称/HTML所在的文件夹名称
            cookie.setPath("/ieAnalyzeApplication/hsie");
            response.addCookie(cookie);
        }catch (Exception e) {
            return "redirect:/login.jsp";
        }
        return "redirect:/hsie/managersystem.html";
    }

 

转载于:https://www.cnblogs.com/lpy-pingyuan/p/9336056.html

ssm+shiro+layui+easyui实现的后台权限管理系统 项目描述 基于SSM+Shiro+Layui+Easyui实现的后台权限管理系统 丰富的代码注释会很方便于你的理解,清晰的代码层次会让你更清楚的明白企业级架构!希望能在有限的间帮助你快速的提高自己!学习本项目需要一定的基础哈。 介绍 BM致力于更完善,代码注释更丰富,更易于理解学习的企业级后台管理系统 技术 ssm 框架 , shiro权限管理,layui + easyui 页面技术 功能 1.用户信息管理,2.角色管理,3.资源管理,4.部门资源,5.字典管理,6.日志管理,7.日志图表管理,后期功能陆续更新(boot版等等) 运行环境 jdk8+tomcat8+mysql+IntelliJ IDEA+maven 项目技术(必填) ssm+shiro+layui+easyui 数据库文件 链接:https://pan.baidu.com/s/15wqlVBqwEsB4PQ00rBxIuw 提取码:9yv8 jar包文件 链接:https://pan.baidu.com/s/1HcQq1M-_JCvY7hbuxtDQnQ 提取码:wmtnssm+shiro+layui+easyui实现的后台权限管理系统 项目描述 基于SSM+Shiro+Layui+Easyui实现的后台权限管理系统 丰富的代码注释会很方便于你的理解,清晰的代码层次会让你更清楚的明白企业级架构!希望能在有限的间帮助你快速的提高自己!学习本项目需要一定的基础哈。 介绍 BM致力于更完善,代码注释更丰富,更易于理解学习的企业级后台管理系统 技术 ssm 框架 , shiro权限管理,layui + easyui 页面技术 功能 1.用户信息管理,2.角色管理,3.资源管理,4.部门资源,5.字典管理,6.日志管理,7.日志图表管理,后期功能陆续更新(boot版等等) 运行环境 jdk8+tomcat8+mysql+IntelliJ IDEA+maven 项目技术(必填) ssm+shiro+layui+easyui 数据库文件 链接:https://pan.baidu.com/s/15wqlVBqwEsB4PQ00rBxIuw 提取码:9yv8 jar包文件 链接:https://pan.baidu.com/s/1HcQq1M-_JCvY7hbuxtDQnQ 提取码:wmtn
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值