티스토리 뷰

HttpURLConnection ?

URLConnection의 하위 클래스로, HTTP 프로토콜을 사용하여 특정 웹 서버와 통신하기 위한 클래스이며 HttpURLConnection은 HTTP 메서드(예: GET, POST, PUT, DELETE 등)를 지원하며, HTTP 요청과 응답을 처리할 수 있는 메서드들을 제공함

 

리소스 가져오기

1. HTML, JSON, XML

2. 이미지

3. 파일

 

1. URL 생성

: 웹 리소스에 대한 URL을 생성

2. HttpURLConnection 초기화

: URL 객체의 openConnection() 메서드를 호출하여 HttpURLConnection 객체를 얻습니다.

3. HTTP 메서드 설정(예:GET, POST)

: HttpURLConnection 객체의 setRequestMethod() 메서드를 사용하여 원하는 HTTP 메서드(예: GET,POST 등)를 설정합니다.

4.요청 헤더 설정 (선택사항)

: 필요한 경우, setRequestProperty() 메서드를 사용하여 요청 헤더를 설정합니다.

5. 요청 본문 작성 (선택사항)

: POST, PUT과 같은 메서드를 하용할 때, 출력 스트림을 사용하여 요청 본문을 작성합니다.

6. 응답 코드 확인

: getResponseCode() 메서드를 호출하여 서버에서 반환한 HTTP 응답 코드를 확인합니다.

7. 응답 헤더 읽기(선택사항)

: 필요한 경우, getHeaderField() 또는 관련 메서드를 사용하여 응답 헤더를 읽습니다.

8. 응답 본문 읽기

: InputStream을 사용하여 응답 본문을 읽고 처리합니다.

9. 연결 종료

: 연결을 끊고 리소스를 해제합니다.

 

 

HttpURLConnection으로 데이터를 읽어올 때 

BufferedReader, InputStreamReader, conn.InputStream 을 사용하여 읽어오는게 정석적인 방법

	HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("GET");
            conn.setRequestProperty("Accept", "application/json");

            int responseCode = conn.getResponseCode(); //200
            if(responseCode ==200){
                // 스트림(Stream = 입력, 출력)의 연결
                BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
            }