java.net.URL 模拟用户登录网页并维持session【转】

java.net.URL 模拟用户登录网页并维持session

半成品,并非完全有用

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class SessionHolder {
    public static void main(String[] args) throws Exception {
        URL url = new URL("http://192.168.1.147:144/platformproxy/j_spring_security_check");
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.setDoOutput(true);// 允许连接提交信息
        connection.setRequestMethod("POST");// 网页提交方式“GET”、“POST”
        connection.setRequestProperty("User-Agent",    "Mozilla/4.7 [en] (Win98; I)");
        StringBuffer sb = new StringBuffer();
//        sb.append("username=admin");
//        sb.append("&password=admin");
        sb.append("j_username=09000001");
        sb.append("&j_password=zsinsgooda");
        OutputStream os = connection.getOutputStream();
        os.write(sb.toString().getBytes());
        os.close();
        BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream()));
        String responseCookie = connection.getHeaderField("Set-Cookie");// 取到所用的Cookie
        System.out.println("cookie:" + responseCookie);
        String line = br.readLine();
        while (line != null) {
            System.out.println(new String(line.getBytes()));
            line = br.readLine();// 打出登录的网页
        }
        // acces
        URL url1 = new URL("网页的登录后的页面");
        HttpURLConnection connection1 = (HttpURLConnection) url1.openConnection();
        connection1.setRequestProperty("Cookie", responseCookie);// 给服务器送登录后的cookie
        BufferedReader br1 = new BufferedReader(new InputStreamReader(connection1.getInputStream()));
        String line1 = br1.readLine();
        while (line1 != null) {
            System.out.println(new String(line1.getBytes()));
            line1 = br1.readLine();
        }
    }
}

引用自:http://blog.csdn.net/zgrjkflmkyc/article/details/9150511

原文地址:https://www.cnblogs.com/whatlonelytear/p/5129934.html