Javaシミュレーションクッキーログインの簡単な操作例

2584 ワード

この例では、Javaシミュレーションクッキーログインの簡単な操作について説明します.皆さんの参考にしてください.具体的には以下の通りです.
最近は禅道の機能インタフェースを携帯端末にして、登録をしている間に、禅道のソースコードを見て、クッキーが登録しているので、クッキーの登録をシミュレートするインタフェースを作って、手に入れたクッキーをインタフェースが要求するたびに頭の中に置いて、正常に訪問することができます.

import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;

/**
 * @Author: jljiang
 * @Description:Java   cookie  
 * @Date: Created in 2019/1/16 15:14
 */
public class ImitateLoginController {

  public static void main(String args[]) throws Exception {
    //      
    String loginStr = "http://zenta.51fb.com/index.php?m=user&f=login";
    /**
     *     URL  URLConnection  。 URLConnection       URL  。  : // Using
     * java.net.URL and //java.net.URLConnection
     */
    URL url = new URL(loginStr);
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setDoOutput(true);
    OutputStreamWriter out = new OutputStreamWriter(connection
        .getOutputStream(), "GBK");
    //   account password          ,     html   
    out.write("account=you-user-name&password=you-password");
// remember to clean up
    out.flush();
    out.close();

//   cookie,   cookie                        
    String cookieVal = connection.getHeaderField("Set-Cookie");

/*------------------------------------      -------------------------------------------------*/
    String otherUrl = "http://zenta.51fb.com/index.php?m=bug&f=browse";
    url = new URL(otherUrl);
    HttpURLConnection otherConnection = (HttpURLConnection) url.openConnection();
    if(cookieVal != null){
      otherConnection.setRequestProperty("Cookie",cookieVal);
    }
    otherConnection.connect();
    InputStream urlStream = otherConnection.getInputStream();
    BufferedReader bufferedReader = new BufferedReader(
        new InputStreamReader(urlStream));
    String content = null;
    StringBuilder total = new StringBuilder();
    while ((content = bufferedReader.readLine()) != null) {
      total.append(content);
    }
    bufferedReader.close();
    System.out.println(content);
  }
}


Javaアルゴリズムに関する詳細に興味のある方は、「Javaデータ構造とアルゴリズムチュートリアル」、「Java操作DOMノードテクニックまとめ」、「Javaファイルとディレクトリ操作テクニックまとめ」、「Javaキャッシュ操作テクニックまとめ」のトピックを参照してください.
本文で述べたjavaプログラム設計に役立つことを願っています.