1

我使用的代碼HttpURLConnection-連接()拋出的Java的ConnectException

public static int getResponseCode(String urlString) throws MalformedURLException, IOException {   
    URL u = new URL(urlString); 
    HttpURLConnection huc = (HttpURLConnection) u.openConnection(); 
    huc.setRequestMethod("GET"); 
    huc.connect(); 
    return huc.getResponseCode(); 
} 

獲得響應代碼。當運行該代碼,我得到一個異常 java.net.ConnectException:連接在java.net.PlainSocketImpl.socketConnect(本機方法)

我印刷這使得該錯誤的URL超時 ,然後在裝載了它瀏覽器。該鏈接已加載,但過了一段時間後,大約2分鐘。可能是狀態碼未被返回的原因是什麼?我該如何處理這種情況?

感謝您的幫助!

莎麗

+0

你能發佈錯誤信息嗎? –

+0

是的.. java.net.ConnectException:連接超時在java.net.PlainSocketImpl.socketConnect(本地方法) – Shari

+0

您可以發佈網址嗎? –

回答

0

嘗試huc.connect()之前調用huc.setReadTimeout(120000);

但是恐怕服務器端出了問題。爲什麼在~2分鐘後回覆?

+0

是的,有時它加載得太慢。 – Shari

+0

我剛剛檢查了google.com的相同代碼,並且出現了與網址google.co.in/intl/zh_CN/options – Shari

+0

相同的錯誤.Google.com對我而言效果不錯,所用時間少於1秒。您的互聯網連接似乎有問題。 – AlexR

0

您是說在瀏覽器中加載內容需要2分鐘。最有可能的是,你連接超時。您可以嘗試set a longer timeout您在毫秒

huc.setConnectTimeout(1800000); 

連接到3分鐘內,如果問題不超時,則很可能必須設置您的連接代理。檢查瀏覽器中的代理設置並設置適當的值。例如,請參閱this question,瞭解如何操作。

+0

我剛剛檢查了http://google.com的相同代碼,並與網址http://www.google.co.in/intl/zh-CN/options/ – Shari

+0

發生了同樣的錯誤。建議 – jny

+0

Yeh Proxy通過代碼正確設置。 – Shari

相關問題