2014-12-05 3 views
1

HttpUrlConnection을 사용하여 URL에 연결하려고합니다. 사용자가 입력하는 호스트는 http : // 또는 https : //에서 실행될 수 있습니다. 연결하면 EOFException처럼 예외가 발생합니다. URL이 일부 오류 코드 또는 무언가를 통해 https에서 실행되고 있음을 확인하는 방법이 있습니까?HttpURLConnection을 사용하여 https를 확인하는 방법

다음 코드는이 용도로 사용하고 있습니다.

HttpURLConnection.setFollowRedirects(true); 
con = (HttpURLConnection) new URL(url[0]).openConnection(); 
con.setRequestMethod("POST"); 
con.setConnectTimeout(20000); 

나는 URL이 내가 유효한 URL하지 않은 wwww.gooooooodldldle.com 입력과 같은 유효하지 않은 어떤 경우 거처 코드를 사용하고 있습니다. 난 당신이 마음을하지 않을 경우, 당신은 다시 reacreate하지 않는 경우 연결이 생성 된 후에는 변경할 수 없습니다 대신

답변

2

의 URL android-async-http 라이브러리를 사용하려고 Java.net.SocketTimeout 예외 여기

+0

안녕하세요 호스트가 유효하지 않은지 확인하고 싶습니다. 현재로서는 예외가 발생합니다. –

+0

@TarunSharma 질문을 업데이트하고 예외 추적을 추가 할 수 있습니까? 도움이 될 수 있습니다. – axierjhtjz

+0

체크 아웃 업데이트 –

0

을 얻고있다. 프로토콜을 알기 위해 이렇게 할 것입니다. 업데이트 후

URL url; 
try { 
    url = new URL(url[0]); 
    if(url.getProtocol().equalsIgnoreCase(HTTPS){ 
     Lod.i(TAG, "Is HTTPS connection"); 
    } else { 
     Log.i(TAG, "Is HTTP connection"); 
    } 
} catch (EOFException eofEx) { 
    eofEx.printStackTrace(); 
} 

:

당신은 정규식 포함와 URL 문자열을 확인할 수 있습니다 후 올바른 연결을 시도 있다면. 또는 try catch에 모든 로직을 넣고 예외가 발생하면 토스트 또는 대화 상자를 표시하십시오.

희망이 있습니다.

관련 문제