자바 웹 페이지 내용 획득

웹 주소 캡 처 자바 API 개요
 
http://code.google.com/intl/zh-CN/appengine/docs/java/urlfetch/usingjavanet.html
App Engine 응용 프로그램 은 다른 응용 프로그램 과 통신 하거나 인터넷 주 소 를 캡 처 하여 네트워크 의 다른 자원 에 접근 할 수 있 습 니 다.응용 프로그램 은 웹 주소 캡 처 서 비 스 를 사용 하여 HTTP 와 HTTPS 요청 을 보 내 고 응답 을 받 을 수 있 습 니 다.효율 성과 확장 성 을 고려 하여 사이트 캡 처 서 비 스 는 Google 의 네트워크 기반 구 조 를 사용 합 니 다.
  • 자바.net 으로 인터넷 주소 캡 처
  • 요청
  • 보안 연결 과 HTTPS
  • 요청 헤더
  • 응답
  • 회사 방화벽 에 연 결 된 호스트
  • 사이트 캡 처 및 개발 서버
  • 할당량 과 제한
  • 자바.net 으로 인터넷 주 소 를 캡 처 합 니 다.
    자바 표준 라 이브 러 리 의 자바.net.URLConnection 과 관련 클래스 를 사용 하여 자바 응용 프로그램 을 통 해 HTTP 와 HTTPS 연결 을 만 들 수 있 습 니 다.App Engine 은 인터넷 주소 캡 처 서 비 스 를 사용 하여 이 인 터 페 이 스 를 실현 합 니 다.프로그램 이 소켓 연결 을 직접 만 들 지 않 았 습 니 다.
    한 사이트 의 페이지 내용 을 가 져 오 는 간단 한 방법 은 자바.net.URL 대상 을 만 들 고 호출 하 는 것 입 니 다openStream().이 방법 은 연결 을 만 드 는 상세 한 정 보 를 처리 하고 HTTP GET 요청 을 한 다음 응답 데 이 터 를 검색 할 수 있 습 니 다.
    import java.net.MalformedURLException; 
    import java.net.URL; 
    import java.io.BufferedReader; 
    import java.io.InputStreamReader; 
    import java.io.IOException; 
     
    // ... 
            try { 
                URL url = new URL("http://www.example.com/atom.xml"); 
                BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream())); 
                String line; 
     
                while ((line = reader.readLine()) != null) { 
                    // ... 
                } 
                reader.close(); 
     
            } catch (MalformedURLException e) { 
                // ... 
            } catch (IOException e) { 
                // ... 
            }

    더 복잡 한 요청 에 대해 서 는 URL 대상openConnection()방법 을 사용 하여 URL connection 대상(HttpURLConnection 또는 HttpsURLConnection,주소 에 따라 정 함)을 가 져 올 수 있 습 니 다.요청 을 보 내기 전에 이 대상 을 더 많은 정보 로 준비 할 수 있 습 니 다.자바.net 사용 참조.
    청 하 다
    응용 프로그램 은 HTTP(정상)또는 HTTPS(보안)를 사용 하여 웹 주 소 를 캡 처 할 수 있 습 니 다.사이트 주소 지정 에 사용 할 방안:http://...또는https://...웹 주 소 는 표준 HTTP(80)와 HTTPS(443)포트 를 사용 해 야 합 니 다.포트 는 방안 에 의 해 암시 되 지만 포트 가 방안 에 대해 표준 이 라면 사이트 주소 에서 도 언급 할 수 있다https://...:443/.응용 프로그램 은 원 격 호스트 의 임의의 포트 에 연결 할 수 없고,프로젝트 의 비표 준 포트 를 사용 할 수 없습니다.
    다음 과 같은 모든 HTTP 방법 으로 캡 처 할 수 있 습 니 다.GET(요청 페이지 와 데이터 에 자주 사용),POST(네트워크 폼 제출 에 자주 사용),PUT,HEADDELETE.캡 처 는 HTTP 요청 헤더 와 유효 부하(HTTP 요청 본문)를 포함 합 니 다.
    웹 주소 캡 처 서 비 스 는 결 과 를 캡 처 하기 위해 HTTP/1.1 호 환 에이 전 트 를 사용 합 니 다.
    프로그램 이 요청 한 무한 순환 을 방지 하기 위해 서 는 요청 처리 프로그램 이 자신의 웹 주 소 를 캡 처 하 는 것 을 허용 하지 않 습 니 다.그러나 다른 방법 은 여전히 무한 순환 을 일 으 킬 수 있 기 때문에 프로그램 이 사용자 가 제공 하 는 인터넷 주소 에 대한 요청 을 캡 처 할 수 있다 면 매우 조심해 야 한다.
    사이트 캡 처 서비스 에 대한 호출 은 동기 화 되 며,서비스 가 원 격 호스트 로부터 응답 을 받 을 때 까지 되 돌아 오지 않 습 니 다.응용 프로그램의 요청 타 이 머 는 원 격 호스트 가 응답 하기 전에 끝 날 수 있 습 니 다.요청 이 일단 발송 되면 취소 할 수 없습니다.
    보안 연결 과 HTTPS
    응용 프로그램 은 안전 한 서버 에 연결 하기 위해 HTTPS 방법 으로 인터넷 주 소 를 캡 처 할 수 있다.요청 과 응답 데 이 터 는 암호 화 형식 으로 네트워크 에서 전송 된다.
    사이트 캡 처 서비스 에 사용 되 는 프 록 시 는 연 결 된 호스트 를 검증 할 수 없습니다.인증서 신뢰 체인 이 존재 하지 않 기 때문에 프 록 시 는 자체 서명 인증 서 를 포함 한 모든 인증 서 를 받 습 니 다.HTTPS 를 사용 할 때 프 록 시 서버 는 앱 엔진 과 원 격 호스트 사이 의'브로커'공격 을 감지 할 수 없습니다.
    요청 헤더
    응용 프로그램 은 전송 요청 을 위해 HTTP 레이 블 을 설정 할 수 있 습 니 다.
    HTTP POST 요청 을 보 낼 때Content-Type레이 블 을 명확 하 게 설정 하지 않 으 면 레이 블 이x-www-form-urlencoded로 설 정 됩 니 다.이것 은 네트워크 폼 에 사용 되 는 내용 유형 입 니 다.
    안전성 을 고려 하여 응용 프로그램 은 다음 과 같은 레이 블 을 수정 할 수 없습니다.
  • Content-Length
  • Host
  • Referer
  • Vary
  • Via
  • X-Forwarded-For

  • 상황 에 따라 앱 엔진 에서 이 헤더 들 을 정확 한 값 으로 설정 합 니 다.예 를 들 어 앱 엔진 은 요청 데이터 계산Content-Length레이 블 을 통 해 보 내기 전에 요청 에 추가 합 니 다.
    호응
    사이트 캡 처 서 비 스 는 응답 코드,헤더,본문 을 포함 한 모든 응답 데 이 터 를 되 돌려 줍 니 다.
    기본 적 인 상황 에서 사이트 캡 처 서비스 가 재 설정 코드 가 있 는 응답 을 받 으 면 서 비 스 는 재 설정 을 따 를 것 입 니 다.서 비 스 는 최대 5 개의 리 셋 응답 을 따라 최종 자원 으로 돌아 갑 니 다.API 알림 사이트 캡 처 를 사용 하여 방향 을 바 꾸 지 말고 프로그램 에 대한 방향 변경 응답 만 되 돌려 줄 수 있 습 니 다.
    기본 적 인 상황 에서 응답 이 최대 응답 크기 제한 을 초과 하면 응답 을 차단 합 니 다.응답 이 최대 시간 을 초과 하면 API 를 사용 하여 서비스 에 이상 을 일 으 킬 수 있 습 니 다.(이 제한 값 에 대해 서 는 다음 글 을 참조 하 시기 바 랍 니 다.)
    회사 방화벽 뒤에 있 는 호스트 에 연락 하 세 요.
    Google 보안 데이터 커 넥 터(SDC)를 사용 하면 회사 방화벽 다음 시스템 에 프로그램 을 연결 할 수 있 습 니 다.인터넷 에 설 치 된 SDC 에이 전 트 를 통 해 Google 기업 애플 리 케 이 션 키 트 영역 에서 실행 중인 App Engine 애플 리 케 이 션 은 에이 전 트 를 검증 하고 인 트 라 넷 의 인터넷 주 소 를 방문 할 수 있 습 니 다.SDC 에이 전 트 는 인 트 라 넷 에 애플 리 케 이 션 이 연 결 될 수 있 도록 하고,도 메 인 에 Google 기업 애플 리 케 이 션 계 정 으로 로그 인 한 사용자 만 이 작업 을 수행 할 수 있 도록 합 니 다.
    응용 프로그램 은 인터넷 주소 캡 처 서 비 스 를 사용 하여 인 트 라 넷 주소 에 접근 할 수 있 습 니 다.응용 프로그램 은 특수 한 레이 블 을 포함 하고 있 으 며,요청 은 SDC 에이 전 트 를 위 한 것 임 을 설명 합 니 다.헤더 의 이름 은use_intranet이 고 값 은yes이다.다른 변경 사항 필요 없 음;사용자 인증,검증,보안 연결 을 자동 으로 처리 합 니 다.
    다음은 자바.net.HttpURLConnection 인 터 페 이 스 를 통 해 사이트 주 소 를 캡 처use_intranet헤더 와 결합 하여 사용 하 는 예제 입 니 다.
    import java.net.HttpURLConnection; 
    import java.net.URL; 
     
    // ... 
            URL url = new URL("http://www.corp.example.com/sales.csv"); 
            HttpURLConnection connection = (HttpURLConnection) url.openConnection(); 
            connection.setRequestProperty("use_intranet", "true");

    더 많은 정 보 는 Google 보안 데이터 커 넥 터 사 이 트 를 참조 하 십시오.
    사이트 캡 처 및 개발 서버
    응용 프로그램 이 컴퓨터 의 개발 서버 에서 실 행 될 때 웹 주소 캡 처 서비스 호출 을 로 컬 에서 처리 합 니 다.서버 를 개발 하여 컴퓨터 로 인터넷 에 접근 하 는 모든 네트워크 설정 을 사용 하고 컴퓨터 에서 원 격 호스트 에 직접 연락 하여 웹 주 소 를 캡 처 합 니 다.
    인터넷 주 소 를 캡 처 하 는 프로그램의 기능 을 테스트 할 때 컴퓨터 가 원 격 호스트 에 접근 할 수 있 는 지 확인 하 십시오.
    응용 프로그램 이 인 트 라 넷 에서 Google 보안 데이터 연결 기 를 사용 하여 인터넷 주 소 를 방문 할 경우 방화벽 뒤에 연 결 된 인 트 라 넷 에서 응용 프로그램 을 테스트 하 는 지 확인 하 십시오.앱 엔진 과 달리 개발 서버 는 인 트 라 넷 주 소 를 SDC 프 록 시 를 사용 하지 않 는 다.Google 기업 애플 리 케 이 션 키 트 와 App Engine 만 SDC 에이 전 트 를 검증 할 수 있 습 니 다.
    할당량 과 제한
    모든 사이트 캡 처 요청 은 사이트 캡 처 API 호출 할당량 에 계 산 됩 니 다.
    웹 주소 캡 처 서 비 스 를 사용 하여 HTTP 또는 HTTPS 요청 에서 보 낸 데 이 터 는 다음 할당량 에 계 산 됩 니 다.
  • 대역 폭 전송(조정 가능)
  • 보 낸 사이트 캡 처 데이터
  • 이 할당량 을 제외 하고 HTTPS 요청 에서 보 낸 데 이 터 는 다음 할당량 에 계 산 됩 니 다.
  • 안전 전송 대역 폭(조정 가능)
  • 웹 주소 캡 처 서 비 스 를 사용 하면 HTTP 나 HTTPS 요청 에 대한 응답 에서 받 은 데 이 터 는 다음 할당량 으로 계 산 됩 니 다.
  • 대역 폭 전송(조정 가능)
  • 받 은 사이트 캡 처 데이터
  • 이 할당량 을 제외 하고 HTTPS 요청 에 대한 응답 에서 받 은 데 이 터 는 다음 할당량 으로 계 산 됩 니 다.
  • 안전 전송 대역 폭(조정 가능)
  • 할당량 에 대한 상세 한 정 보 는 할당량 과 관리 콘 솔 의'할당량 상세 정보'부분 을 참조 하 시기 바 랍 니 다.
    할당량 을 제외 하고 사이트 캡 처 서 비 스 를 사용 하려 면 다음 과 같은 제한 을 따라 야 한다.
    제한 하 다.
    값.
    요청 크기
    1 메가바이트
    응답 크기
    1 메가바이트

    좋은 웹페이지 즐겨찾기