使用postman和editthiscookies

使用工具postman + edit this Cookies 协助工作

一、使用动机

  • 避免测试的时候重复填表单,提高工作效率
  • 检验其他网站安全性

二、工具介绍

postman是一款Chrome的扩展插件,可以帮助用户填写http报文并选定方式发送。对于我们web开发人员很有帮助。同样
editthisCookies也是Chrome一款小巧实用的工具。可以用来修改cookies,Chrome本身也是有cookies管理的,但是只能查看和删除,相对来说功能就比较简单。下面来介绍一个应用场景,来介绍我们是如何来使用这两个工具提高我们的工作效率。详细用法见链接。

三、应用场景

这里用J2EE的servlet作为后台处理程序,其他asp,php等类似。后台的逻辑是前台传送的数据进行打印。并用cookies记录访问次数。

GET请求处理方式

public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        System.out.println("使用GET方式,下面转到doPost处理");
        doPost(request, response);
    }

POST请求处理方式

public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    String time=null;     //用来计算请求次数 存在cookies

    Cookie[] cookies = request.getCookies();    
    if(cookies!=null){
        for(Cookie cookie : cookies){//提取cookies
            if(cookie.getName().equals("time")){
                time=cookie.getValue(); 
                break;
            }
        }
    }
    if(time==null){ //cookies失效或者第一次请求
        time="1";
    }else{ //请求次数加一
        time=Integer.parseInt(time)+1+"";
    }

  //添加(更新)到cookies
   Cookie cookie = new Cookie("time",time);
   cookie.setMaxAge(3600);              
   cookie.setPath("/");
   response.addCookie(cookie);

   //打印数据
   String u=request.getParameter("username");
   String p=request.getParameter("password");
   System.out.println("用户名:"+u);
   System.out.println("密码:"+p);
   System.out.println("访问次数"+time);

   response.sendRedirect("MyJsp.jsp");
}

前台表单

 
账号:
密码:

以上构架了一个基本的http请求。其中cookies的操作我们放在服务器中操作,用来记录用户登录请求的次数。

页面输入数据,普通的一次请求结果如下:


这是很常规的一次请求,假设我们的表单数据很多,每次调试都需要填写表单很费事费力。这个时候postman就派上用场了。打开postman

如图。

使用postman和editthiscookies_第1张图片

红色为历史记录。黄色为填数据的地方。蓝色部分可以选择请求方式,比如数据POST,GET,PUT… 本例中使用get方式。绿色部分为我们的请求地址,这里是登陆的servlet的地址。最后黑色部分显示返回的结果和状态码,图中为200,表示访问成功。这次请求后台输出结果如下:

有时候我们不仅想操作表单,还想操作cookies,比如这个例子里设定当time大于100的时候给用户1个积分,为了测试这个功能,总不能手动登陆100次,但是如果直接代码直接设置又比较麻烦,因为测试完还要改回去,这个时候我们可以用上面介绍的edit this cookies扩展工具。界面如下:


使用postman和editthiscookies_第2张图片

如图我直接把time的值从1修改为5,提交一次请求后输出如下变为6(本来应该输出2):
使用postman和editthiscookies_第3张图片

四、总结

虽然是两个小工具,但是在实际开发中特别是调试的时候使用,会极大提高效率。如果以后赚钱了就给这两个扩展的设计者捐助一下吧O(∩_∩)O~

你可能感兴趣的:(javaweb)