我正在編寫一個測試許多網站的有效性的程序。我的計劃是獲取URL,在前面附加http並使用HttpURLConnection類。在Java中測試網站有效性
我的問題是,我有時會得到403響應代碼被禁止。有沒有辦法解決?如果我得到一個403禁止的意思,這意味着該網站確實有效?我用403代碼將URL粘貼到瀏覽器中,並且能夠很好地連接。
另一個問題是,我經常得到301,302和303,我知道這些與重定向有關。然後我從頭部的「位置」鍵中獲取重定向網址。連接到這些時,我會收到與證書鏈相關的錯誤。我相信這可以通過使用包含我們認爲有效的證書或證書頒發者列表的KeyStore來解決。這聽起來是對的嗎?
謝謝。
我沒有我的電腦上的代碼,但我會嘗試重新創建它。
pingSuccess = false;
HttpUrlConnection connection = (HttpUrlConnection) new URL(urlString).openConnection();
int response = connection.getResponseCode();
if(response == 301 || response == 302 || response == 303) {
String newUrl = connection.getHeaderSomething("Location");
connection = (HttpUrlConnection) new URL(newUrl).openConnection();
response = connection.getResponseCode();
if(response == 200)
pingSuccess = true;
}
return pingSuccess;
關於您的SSL/TLS查詢,您能分享您的代碼/代碼段與輸出。 – Learner
但是如果我在檢查Java中的響應代碼時得到403,但是當我在瀏覽器中訪問網站時它工作正常嗎?我檢查的網址最後沒有「/」。謝謝。 –
你能分享你的代碼片段嗎? – Learner