public static String GetLink(String Corpcode, String Code) throws Exception {
HttpClient client = new HttpClient();// 打开新窗口
client.getHostConfiguration().setHost(“localhost”, 8080);// 配置
// 模拟手动登录页面,login是处理登陆的action
PostMethod post = new PostMethod(“/login”);
NameValuePair username = new NameValuePair(“username”, “admin”);//用户名
NameValuePair pass = new NameValuePair(“password”, “admin123”);//密码
post.setRequestBody(new NameValuePair[] { username, pass });
int status = client.executeMethod(post);
System.out.println(“执行状态:” + status + “,返回状态:” + post.getStatusLine(); post.releaseConnection();
// 查看 cookie,并传递Cookies到服务器认证
CookieSpec cookiespec = CookiePolicy.getDefaultSpec();
Cookie[] cookies = cookiespec.match(“localhost”, 8080, “/”, false, client.getState().getCookies());
if (cookies.length == 0) {
System.out.println(“没有Cookies”);
} else {
for (int i = 0; i < cookies.length; i++) {
System.out.println(“Cookies:” + cookies[i].toString());
}
}
// 因为前面已经登陆了,也加入了Cookies,所以才可以直接访问这个地址
GetMethod get = new GetMethod(“/user”);//这个才是需要访问的真正action
int stats = client.executeMethod(get);
String result = get.getResponseBodyAsString();
System.out.println(“Get请求:” + result);
get.releaseConnection();
return result;
}