HttpClient 학습 노트 (2) - 프로그램 을 통 해 인망 에 접근
전장 에 소 개 된 HttpClient 가 제공 하 는 기능 지원 은 먼저 방문 할 대상 서버 의 도 메 인 이름 (www. renren. com) 을 확인 하고 접근 방법 (첫 방문, 일반적으로 GET 요청) 을 확인 한 다음 접근 경로 (/, 즉 루트 경로) 를 확인 해 야 합 니 다. 포트 는 기본 포트 (80) 입 니 다.그러면 우 리 는 다음 코드 를 통 해 인터넷 서버 에 기본 적 인 '환영 페이지' 를 보 낼 수 있 습 니 다.
HttpClient client = new HttpClient();// HttpClient client.getHostConfiguration().setHost("www.renren.com"80);//
GetMethod get = new GetMethod("/");// GET
int status = client.executeMethod(get);// GET ;status ,200 ,302 ,404 ··· ···
상기 코드 를 실행 하면 마지막 status 는 200 으로 설 정 됩 니 다. 즉, 모든 네트워크 의 서버 가 제 요청 에 정상 적 인 응답 을 하고 접근 에 성공 합 니 다.다음 문 제 는 서버 의 응답 정 보 를 어떻게 봐 야 하 느 냐 하 는 것 이다.
HttpClient 학습 노트 1 에 소 개 된 것 은 GetMethod 인 스 턴 스 의 getResponse Body 와 getResponse Headers 방법 을 통 해 대상 서버 가 응답 하 는 머리 정보 와 메시지 내용 을 얻 을 수 있 습 니 다.
코드 는 다음 과 같 습 니 다:
Header[] responseHeaders = get.getResponseHeaders();// for (Header header : responseHeaders) {
System.out.println(header);//
}
String responseBody = new String(get.getResponseBody(), get.getResponseCharSet());// , ,
System.out.println(responseBody);//
구체 적 인 운행 결과 (메시지 체 의 내용 이 비교적 크기 때문에 다음 과 같이 응답 하 는 머리 정보 만 보 여 줍 니 다).
인용 하 다.
Server: nginx/0.7.67
Date: Sat, 04 Jun 2011 10:41:38 GMT
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Cache-Control: no-cache
Pragma: no-cache
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Set-Cookie: _r01_=1; domain=.renren.com; path=/; expires=Tue, 29-May-2012 10:41:38 GMT
(메시지 체 내용 은 인망 의 '환영 페이지' 에서 '원본 코드 보기' 를 통 해 응답 내용 을 볼 수 있다.)
응답 헤드 정 보 를 보면 모든 사람의 서버 이름과 버 전 번호 (nginx, 0.7.67) 를 얻 을 수 있 습 니 다.되 돌아 오 는 메시지 체 의 내용 형식 은 HTML 텍스트 이 고 문자 인 코딩 형식 은 UTF - 8 형식 입 니 다.동시에 이번 세 션 에서 발생 하 는 세 션 의 내용 은: 입 니 다.r01_=1; domain=.renren.com;
이 작은 예 는 서버 에 GET 요청 을 간단하게 보 내 고 응답 정 보 를 콘 솔 에 인쇄 할 뿐 이 루어 진 기능 은 Telent 와 기본적으로 유사 하 며 실제 응용 가치 가 없습니다.하지만 이 를 통 해 HttpClient 의 원리 와 개발 방법 을 익 힐 수 있다.다음 장 에 서 는 HttpClient 를 통 해 인간 네트워크 에 로그 인 하 는 방법 을 소개 한다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다른 사람의 웹사이트 편집: contenteditable 및 designMode그래도 우리가 그렇게 할 수 있다고 생각하는 것은 멋진 일입니다. 제가 강조하고 싶었던 일종의 관련 API가 실제로 몇 개 있기 때문에 오늘 그것을 가져왔습니다. contenteditable는 "true" 값이 할당...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.