2016-07-13 29 views
0

我知道如何使用JSoup甚至是基於Java的工具連接到普通網站,並且之前已經這樣做了。不幸的是,現在我試圖連接到一個特定的網站,這給我提供了太多的問題,無法徹底研究網絡協議,從而無法修復。使用Java連接到網站 - 處理SSL明文錯誤,代理等更多

我試圖做一個簡單的應用程序,暫時需要連接到後續的網站,以便登入:

lms.topicanative.edu.vn

的問題是,我甚至無法連接到該網站。使用在過去,這導致已經工作了我的錯誤讀法:

Unrecognized SSL message, plaintext connection? 

我用Java本身和手動設置代理服務器,但收到超時錯誤嘗試。我不能正確地修復這個問題,因爲坦率地說,我不知道所有可能失敗的步驟。我希望在這個主題中有更多知識的人可以告訴我是什麼使我需要連接的網站變得如此困難,我該如何連接到它?

這是我迄今爲止嘗試和相應的錯誤:

方法1:JSoup 代碼:

Document logInPage = Jsoup.connect("https://lms.topicanative.edu.vn").get(); 

錯誤:

javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? 

方法2:Java的 代碼:

URL logInURL = new URL("https://lms.topicanative.edu.vn"); 

    SocketAddress logInSocketAddress = new InetSocketAddress(InetAddress.getByName("123.31.18.20"), 8080); 
    Proxy logInProxy = new Proxy(Proxy.Type.HTTP, logInSocketAddress); 
    HttpsURLConnection logInPageConn = (HttpsURLConnection)logInURL.openConnection(logInProxy); 
    System.out.println(logInPageConn.getResponseCode()); 

錯誤:

java.net.ConnectException: Connection timed out: connect 

更新

我已經因爲代碼修改爲以下幾點:

代碼:

URL logInURL = new URL("https://lms.topicanative.edu.vn"); 
SocketAddress logInSocketAddress = new InetSocketAddress(InetAddress.getByName("123.31.18.20"), 443); 
Proxy logInProxy = new Proxy(Proxy.Type.HTTP, logInSocketAddress); 
HttpsURLConnection logInPageConn = (HttpsURLConnection)logInURL.openConnection(logInProxy); 
System.out.println(logInPageConn.getResponseCode()); 

錯誤:

java.net.SocketException: Unexpected end of file from server 
+0

好吧,我在代碼編輯過的錯誤。我有點新,所以我不知道人們是否想看到完整的堆棧跟蹤,所以現在我只是發佈了消息。 –

+0

您確定目標代理正在通過安全協議接受連接嗎?嘗試使用HTTP代替。 –

+0

我剛剛使用inet ping它。isReachable(5000),它是可到達。也許我輸入了錯誤的端口號? –

回答

0

嘗試連接後導入SSL證書和密碼。