关于postman与shiro权限验证问题

    作为一个java的开发小白 , 写完一个web方法测试是必不可少的 , 只有测试号没问题的方法给别人时 ,别人才不知道你是小白 , 要不然很尴尬的 。新手入坑的测试工具是postman 。这个工具用起来还可以 , 这里就不做新手入坑介绍了 , 就说说常用的一个功能吧!!!就是postman关于shiro验证的问题。

    shiro的权限控制很简单,是现在常用验证机制之一,但是有些一些方法常常需要登录后才能进行测试,要不然shiro不让你过去,那怎么办呢?一般开发中的方法是 , 加一个配置文件,测试的时候把方法名和类名填进去,凡是这个文件中的方法,都不需要登陆即可以访问,测试完后再在配置文件中去除 例如我们项目中的ServletInFilter.ini配置文件就是专门负责不需要登陆权限的方法的

#ServletInFilter默认所有方法都需要登录后才能访问,以下对不需要拦截的方法进行说明
[noauthc]
#NO序号 = 类:方法
NO1=Login:checkLogin
NO2=Login:SysHomeExit

    但是,除了你需要频繁修改配置文件外还有一个问题,如果你写的这个后台方法需要获取当前的登陆人信息咋办。。。。。以及其他相似问题 。
所以最好的解决办法还是让postman进行“登陆”。

  1. 首先在chrome上面安装 Postman Interceptor
    Interceptor
  2. 然后安装chrome版 Postman(这里给出下载地址)
    Postman
  3. 打开Interceptor中下面部分
    开启
  4. 开启Postman拦截
    image


  5. 登陆你要测试的网站
  6. postman中查看发送过来的请求
    选中一个请求
  7. 这个时候 你chrome f12查看的 就和你 在postman中的 Headers就基本一致 ,
    如果登陆超时重新登陆,拷贝chrome浏览器F12中的cookie到postman中即可。
    Chrome查看F12的界面

    postman接受到的数据



    如果你是用的是exe版的postman无法使用 Interceptor发送到postman的话,就自己按照F12的 Headerspostman中相应位置手动添加这些变量即可。如果你有更好的方法 , 也可以分享出来 . 毕竟我只是一个Java小白 ....

      </div>
posted @ 2019-07-11 18:04  星朝  阅读(2504)  评论(0编辑  收藏  举报