2013-01-16 88 views
0

我要Jsoup連接到一個網址,你可以在代碼Jsoup,連接或不

public class MainActivity extends Activity { 
private static final String LOG_TAG = "debugger"; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    downloadThread.start(); 

} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.activity_main, menu); 
    return true; 
} 

Thread downloadThread = new Thread() {      
    public void run() {          

     try {  
      Log.i(LOG_TAG,"Beginning"); 
      Response res = Jsoup 
        .connect("https://cas.scolastance.com/cas-auvergne/login?service=http://clg-cosne-d-allier.entauvergne.fr/sco/Modules/Accueil/Accueil.aspx") 
        .data("username", "myuser", "password", "mypass") 
        .data("submit", "SE CONNECTER") 
        .method(Method.POST) 
        .execute();  
      Log.i(LOG_TAG,res.toString()); 

     } catch (IOException e) {       
      e.printStackTrace();       
     }             
    }              
};               

} 

的響應是發現:

[email protected] 

這是否意味着連接正常? 我很開始在開發,抱歉。 謝謝回答

+0

你需要在響應中看*。 –

回答

0

試試這個:

res.statusCode(); 

你會得到響應的狀態代碼。

看起來更在這裏:http://jsoup.org/apidocs/org/jsoup/Connection.Response.html#statusCode()

您可以嘗試顯示res.body();了。

+0

謝謝,我試了兩種:res.body但輸出仍然是連接代碼源。然後,res.statuscode,這是200,這意味着好嗎?那麼,連接與否? – user1984503

+0

我這麼認爲。 200 OK:這是最常見的HTTP狀態消息。它表明請求已成功,服務器能夠根據請求提供服務。 這是來自http://webdesign.about.com/cs/http/p/http2xx.htm也許這將在未來有用 –

0

事實上,Jsoup沒有連接。 所以,我想是這樣的:

  //First connection, to read the key 
      Document doc = Jsoup.connect("https://cas.scolastance.com/cas-auvergne/login?service=http://clg-cosne-d-allier.entauvergne.fr/sco/Modules/Accueil/Accueil.aspx").get(); 
      String key =""; 
      Element keyInput = doc.select("input[name=lt]").first(); 
      key = keyInput.attr("value"); 
      System.out.println("received value : " + key); 

      //Second connection to post the data 
      Log.i(LOG_TAG,"Connecting ...."); 
      Response res = Jsoup 
        .connect("https://cas.scolastance.com/cas-auvergne/login?service=http://clg-cosne-d-allier.entauvergne.fr/sco/Modules/Accueil/Accueil.aspx") 
        .data("username", "myuser", "password", "mypass") 

        .data("lt", key) 
        .data("_eventId", "submit") 
        .data("submit", "SE CONNECTER") 
        .method(Method.POST) 
        .execute(); 

      int statusCode = res.statusCode(); 
      String body = res.body().toString(); 
      System.out.println("received code : " + statusCode); 
      System.out.println("received body : " + body); 

但所顯示的身體仍然是「登錄」的身體,而不是「連接」之一。