서버 응답 코드 및 페이지 제목을 사용하여 웹 사이트의 링크를 확인하려고 시도하는 중, 아래 표시된 코드를 통해 발견 된 서버 응답은 200이며 페이지 제목도 모든 페이지에서 동일합니다. 다음Selenium에서 500 오류를 나타내는 링크의 유효성을 검사하는 방법은 무엇입니까?
코드는 :
if(url == null || url.isEmpty())
{
System.out.println("URL is either not configured for anchor tag or it is
empty");
objExcelFile.writeExcel(filePath,"skipped_links",url);
}
else if(!url.startsWith(homePage)){
System.out.println("URL belongs to another domain, skipping it.");
objExcelFile.writeExcel(filePath,"skipped_links",url);
}
else{
try {
huc = (HttpURLConnection)(new URL(url).openConnection());
huc.setRequestMethod("HEAD");
huc.connect();
respCode = huc.getResponseCode();
if(respCode != 200){
System.out.println(url+" is a broken link");
String Actualtitle = driver.getTitle();
System.out.println(Actualtitle);
System.out.println(respCode);
objExcelFile.writeExcel(filePath,"broken_links",url);
}
else{
String Actualtitle = driver.getTitle();
System.out.println(Actualtitle);
if (Actualtitle.contentEquals(unexpectedTitle)){
System.out.println(url+ " is a broken link");
objExcelFile.writeExcel(filePath,"broken_links",url);
} else {
System.out.println(url+ " is a valid link");
System.out.println(respCode);
objExcelFile.writeExcel(filePath,"valid_links",url);
}
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
헤더는 그대로이지만 링크 헤더 (500) 아래의 에러를 도시한다. 문제는 페이지에 500 오류가 표시 되더라도 서버 응답 코드가 200으로 표시되므로이 링크의 연결이 끊어 졌는지 여부를 확인할 수 없습니다.
문제의 스크린 샷입니다. 페이지 나는 검증하고 있습니다 :
huc.connect();
당신은 많은 for()
루프를 작성할 수 있습니다
시작에 SO : S는 다음과
getResponseCode()
메소드를 호출하는Response Code
중 어느 상태를 확인한다. 무엇을보고 [묻는다]를 보려면 [도움]을 방문하십시오. 힌트 : 노력과 코드 게시 – mplungjan