C/C++教程

httpclient---------------------getCookies

本文主要是介绍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);





    }

}













这篇关于httpclient---------------------getCookies的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!