程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java模仿cookie上岸操作

java模仿cookie上岸操作

編輯:關於JAVA

java模仿cookie上岸操作。本站提示廣大學習愛好者:(java模仿cookie上岸操作)文章只能為提供參考,不一定能成為您想要的結果。以下是java模仿cookie上岸操作正文


在應用java拜訪URL時,假如該URL須要身份驗證,那末就不克不及夠直接拜訪,由於沒有上岸。那末,若何處理這個成績呢?

辦法是應用java模仿上岸,上岸跋文錄下cookie信息,鄙人次提議要求不時將cookie發送曩昔用以注解身份,如許就可以夠拜訪帶有權限的URL了。

上面起首引見應用java模仿上岸。 

// 銜接地址(經由過程浏覽html源代碼取得,即為上岸表單提交的URL)
 String surl = "http://login.goodjobs.cn/index.php/action/UserLogin";

 /**
  * 起首要和URL下的URLConnection對話。 URLConnection可以很輕易的從URL獲得。好比: // Using
  * java.net.URL and //java.net.URLConnection
  */
 URL url = new URL(surl);
 HttpURLConnection connection = (HttpURLConnection) url.openConnection();

 /**
  * 然後把銜接設為輸入形式。URLConnection平日作為輸出來應用,好比下載一個Web頁。
  * 經由過程把URLConnection設為輸入,你可以把數據向你個Web頁傳送。上面是若何做:
  */
 connection.setDoOutput(true);
 /**
  * 最初,為了獲得OutputStream,簡略起見,把它束縛在Writer而且放入POST信息中,例如: ...
  */
 OutputStreamWriter out = new OutputStreamWriter(connection
  .getOutputStream(), "GBK");
        //個中的memberName和password也是浏覽html代碼得知的,即為表單中對應的參數稱號
 out.write("memberName=myMemberName&password=myPassword"); // post的症結地點!
 // remember to clean up
 out.flush();
 out.close();

 // 獲得cookie,相當於記載了身份,供下次拜訪時應用
 String cookieVal = connection.getHeaderField("Set-Cookie");

上岸勝利後,便可拜訪其他URL了。 

 String s = "http://user.goodjobs.cn/dispatcher.php/module/Resume/action/Preview";
 //從新翻開一個銜接
        url = new URL(s);
 HttpURLConnection resumeConnection = (HttpURLConnection) url
  .openConnection();
 if (cookieVal != null) {
            //發送cookie信息上去,以注解本身的身份,不然會被以為沒有權限
  resumeConnection.setRequestProperty("Cookie", cookieVal);
 }
 resumeConnection.connect();
 InputStream urlStream = resumeConnection.getInputStream();
 BufferedReader bufferedReader = new BufferedReader(
  new InputStreamReader(urlStream));
 String ss = null;
 String total = "";
 while ((ss = bufferedReader.readLine()) != null) {
  total += ss;
 }
 IOUtils.write(total, new FileOutputStream("d:/index.html"));
 bufferedReader.close(); 

經由過程上述方法,就可以拜訪帶有權限掌握的URL了。思緒即為:模仿上岸,獲得cookie以記載身份,下次要求時發送cookie以注解身份。

以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved