packagecom.course.httpclient.cookies;importorg.apache.http.HttpResponse;importorg.apache.http.client.CookieStore;importorg.apache.http.client.methods.HttpGet;importorg.apache.http.cookie.Cookie;importorg.apache.http.impl.client.DefaultHttpClient;importorg.apache.http.util.EntityUtils;importorg.testng.annotations.BeforeTest;importorg.testng.annotations.Test;importjava.io.IOException;importjava.util.List;importjava.util.Locale;importjava.util.ResourceBundle;public classMyCookiesForGet {privateString url;privateResourceBundle bundle;//用来存储cookies信息的变量
privateCookieStore store;
@BeforeTestpublic voidbeforeTest(){
bundle= ResourceBundle.getBundle("application",Locale.CHINA);
url= bundle.getString("test.url");
}
@Testpublic void testGetGookies() throwsIOException {
String result;
String uri= bundle.getString("getCookies.uri");
HttpGet get= new HttpGet(this.url +uri);
DefaultHttpClient client= newDefaultHttpClient();
HttpResponse response=client.execute(get);
result= EntityUtils.toString(response.getEntity(),"utf-8");
System.out.println(result);//获取cookies的信息,因为cookie里面不只是一个,他是一个cookie类型的list
store =client.getCookieStore();
List cookieList =store.getCookies();for(Cookie cookie : cookieList){
String name=cookie.getName();
String value=cookie.getValue();
System.out.println("name = "+name+",value = "+value);
}
}
@Test(dependsOnMethods= "testGetGookies")public void testGetWithCookies() throwsIOException {
String uri= bundle.getString("test.get.with.cookies");
HttpGet get= new HttpGet(this.url +uri);
DefaultHttpClient client= newDefaultHttpClient();//设置cookies信息
client.setCookieStore(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);
}
}
}