zoukankan      html  css  js  c++  java
  • httpclient---------------------getCookies

    配置

    [
    {
    "description":"这是一个会返回cookies的数据",
    "request":{
    "uri":"/getcookies",
    "method":"get"
    },
    "response":{
    "cookies":{
    "login":"true"
    },
    "text":"恭喜你获取cookies信息正确",
    "headers":{"Content-Type":"text/html;charset=gbk"}
    }
    },
    {
    "description":"这是一个带cookies信息的get",
    "request":{
    "uri":"/get/with/cookies",t
    "method":"get",
    "cookies":{
    "login":"true"
    }
    },
    "response":{
    "text":"恭喜你获取cookies信息正确11111111111111",
    "headers":{"Content-Type":"text/html;charset=gbk"}
    }

    }
    ]
    ----------------------------------application.properties-------------------
    test.url=http://localhost:8887
    test.get.with.cookies=/get/with/cookies
    getCookies.uri=/getcookies
    login=/login

    --------------------------------MyCookiesForGet----------------(存在问题cookies存在多个时错误)
    package com.course.cookie;

    import org.apache.http.HttpResponse;
    import org.apache.http.client.CookieStore;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.util.EntityUtils;
    import org.testng.annotations.BeforeTest;
    import org.testng.annotations.Test;

    import java.io.IOException;
    import java.util.List;
    import java.util.Locale;
    import java.util.ResourceBundle;

    //import org.apache.http.cookie.Cookie;

    public class MyCookiesForGet {
    private String url;
    private ResourceBundle bundle;
    private CookieStore store;
    @BeforeTest
    public void beforeTest(){
    bundle=ResourceBundle.getBundle("application",Locale.CHINA);
    url=bundle.getString("test.url");
    }
    @Test
    public void testGetCookies() throws IOException {
    String result;
    //从配置文件中拼接测试的url
    String uri=bundle.getString("getCookies.uri");
    String testUrl=this.url+uri;
    //测试逻辑代码书写
    HttpGet get=new HttpGet(testUrl);
    DefaultHttpClient client=new DefaultHttpClient();
    HttpResponse response=client.execute(get);
    result= EntityUtils.toString(response.getEntity(),"utf-8");
    System.out.println(result);
    //获取cookies信息
    this.store=client.getCookieStore();
    List<org.apache.http.cookie.Cookie> cookieList=store.getCookies();
    for (org.apache.http.cookie.Cookie cookie:cookieList){
    String name=cookie.getName();
    String value=cookie.getValue();
    System.out.println("cookie name="+name+"cookie value="+value);
    }
    System.out.println("cookieList:"+cookieList);





    }
    @Test(dependsOnMethods = {"testGetCookies"})
    public void testGetWithCookies() throws IOException {
    //String result;
    //从配置文件中拼接测试的url
    String uri=bundle.getString("test.get.with.cookies");
    String testUrl=this.url+uri;
    //测试逻辑代码书写
    HttpGet get=new HttpGet(testUrl);
    DefaultHttpClient client=new DefaultHttpClient();
    //设置cookies信息
    client.setCookieStore(this.store);
    HttpResponse response=client.execute(get);
    //取响应状态码
    int statusCode=response.getStatusLine().getStatusCode();
    System.out.println("statusCode="+statusCode);
    if (statusCode==200){
    String result=EntityUtils.toString(response.getEntity(),"utf-8");
    System.out.println(result);
    }
    // result= EntityUtils.toString(response.getEntity(),"utf-8");
    // System.out.println(result);
    //获取cookies信息
    this.store=client.getCookieStore();
    List<org.apache.http.cookie.Cookie> cookieList=store.getCookies();
    for (org.apache.http.cookie.Cookie cookie:cookieList){
    String name=cookie.getName();
    String value=cookie.getValue();
    System.out.println("cookie name="+name+"cookie value="+value);
    }
    System.out.println("cookieList:"+cookieList);





    }

    }















  • 相关阅读:
    es6类
    ES6模块化
    es6之常/变量
    es6之结构赋值
    es6之箭头函数、rest函数
    es6的新方法
    数组的使用方法
    Vue接口调用问题
    监听器和计算属性
    Vue路由
  • 原文地址:https://www.cnblogs.com/520502-thy/p/15088362.html
Copyright © 2011-2022 走看看