2011-09-25 2 views
0

https 서버와 comunicates하는 응용 프로그램을 개발해야합니다. 이 응용 프로그램은 일부 비동기 데이터 전송을 수행해야합니다.자바 단순 비동기 HTTPS 클라이언트

먼저 HttpsURLConnection을 사용하고 관찰 가능한 객체가있는 별도의 스레드를 사용하여 반환 된 inputStream을 관리하려고했습니다. 옵저버 클래스는 update 메소드를 호출하는 것보다 약간의 작업을 수행합니다. 이 접근법의 문제점은 내가 여기에 : HTTPUrlConnection error (Can't open OutputStream after reading from an inputStream) HttpUrlConnection 하나 이상의 쓰기/읽기를 처리 할 수 ​​없다는 것입니다. 그 게시물은 어쨌든 나를 도왔습니다.

나는 Jetty와 Apache HttpClient에 대해 읽었지 만, 그 라이브러리는 2.8과 4 메가 ​​바이트로, 작성해야하는 애플리케이션보다 10 배 이상 큽니다.

안녕하세요. 비동기 https 연결 또는 HttpURLConnection과 같은 연결을 여러 번 사용하는 방법 (예 : 두 번째 솔루션은 내 프로그램이 더 좋아할 것입니다.)을 처리 할 수있는 매우 간단하고 가벼운 자바 라이브러리를 찾고 있습니다. 더 복잡한 작업이 필요하고 다른 라이브러리를 가져올 필요가 없습니다.)

btw : 알아두면 유용 할 경우 https 서버를 만들기 위해 httpServer 서버를 사용하고 있습니다. 내가 작성한 내용을 더 잘 이해할 수 있도록 코드의 일부분을 게시해야하는 경우. 라이브러리의 크기가 정말 중요한 경우

감사

+2

왜 Apache HttpClient를 사용하지 않습니까? 스마트 폰 응용 프로그램을 작성하는 경우가 아니면 다른 곳을 보거나 나 자신을 돌릴 필요가 없으므로 시간과 돈을 절약하면 추가 4 메가가 의미가 없습니다. –

+0

사실 그것은 스마트 폰용은 아니지만 포팅이 필요하다는 것을 배제 할 수는 없습니다. 하지만 어쨌든, 당신 의견에 아파치 httpclient 내가 상대적으로 간단한 방식으로 필요한 일을합니까? 내가 말했듯이 뭔가 복잡한 일을 할 필요가 없다는 것을 의미한다. https와 비동기 요청이 모두 필요하다면 말이다. 그래서 당신의 견해로 볼 때이 관점에서 볼 때 아파치 클라이언트는 해결책이 될 수있는 것보다 부두, 닝 (ning) 또는 비슷한 라이브러리보다 "더 나은"것입니다. – MastErAldo

답변

1

, 당신은 HttpCore를 사용하여 고려할 수 있습니다. HttpCore은 낮은 수준의 HTTP 전송 구성 요소 집합 인 Apache HttpClient을 기반으로합니다. 발자국은 약 200-250KB입니다.

+0

답변을 주셔서 감사합니다. 내일 어떤 도서관이 더 필요한지 알아 보겠습니다. – MastErAldo