[英]java.net.UnknownHostException: Unable to resolve host “www.google.com”
[英]java.net.UnknownHostException:www.google.com
我正在開發健全性檢查Web應用程序。 我嘗試使用HttpUrlConnection方法獲取url響應,但出現UnknownHostException。
System.setProperty("java.net.preferIPv4Stack" , "true");
String[] uat_targetUrls={"https://www.google.com"};
String[] uat_targetResponse=new String[uat_targetUrls.length];
HttpURLConnection httpUrlConn;
httpUrlConn = (HttpURLConnection) new URL(uat_targetUrls[i])
.openConnection();
httpUrlConn.setRequestMethod("GET");
httpUrlConn.setConnectTimeout(30000);
httpUrlConn.setReadTimeout(30000);
if(httpUrlConn.getResponseCode()==200)
uat_targetResponse[i]="UP";
else
uat_targetResponse[i]="DOWN";
執行此操作時,我得到各種URL的UnknownHostException。 誰可以幫我這個事。 我正在使用Eclipse IDE。 這是我得到的錯誤:
java.net.UnknownHostException: www.google.com
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
謝謝。
該問題必須是計算機上的網絡問題。
您的代碼對我有用(進行了一些小的修復,以修復丟失的循環變量i
):
public static void main(String[] args) throws Exception {
System.setProperty("java.net.preferIPv4Stack", "true");
String[] uat_targetUrls = { "https://www.google.com" };
String[] uat_targetResponse = new String[uat_targetUrls.length];
HttpURLConnection httpUrlConn;
httpUrlConn = (HttpURLConnection) new URL(uat_targetUrls[0])
.openConnection();
httpUrlConn.setRequestMethod("GET");
httpUrlConn.setConnectTimeout(30000);
httpUrlConn.setReadTimeout(30000);
if (httpUrlConn.getResponseCode() == 200)
uat_targetResponse[0] = "UP";
else
uat_targetResponse[0] = "DOWN";
System.out.println(uat_targetResponse[0]);
}
輸出: UP
我測試了您提供的代碼,看來工作正常。 IP地址無法解析時,拋出UnknownHostException。 如果您在某個組織中,請檢查網絡是否允許您通過代碼連接到網絡,或者DNS設置是否正確。
使用ping www.google.com -4查看是否可以通過ipv4訪問google.com。
嘗試使用以下命令ping www.google.com
ping www.google.com -t
如果您收到超時錯誤
原因1:沒有互聯網連接
原因2:您可能在代理服務器后面。
原因3:將憑證添加到標頭
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.