2011-09-25 114 views
0

我需要開發一個與https服務器通信的應用程序。 這個應用程序需要做一些異步數據傳輸。Java簡單異步HTTPS客戶端

我首先嚐試使用HttpsURLConnection並使用帶有可觀察對象的單獨線程來管理返回的inputStream。觀察者類比將調用更新方法,將做一些東西。 這種方法的問題是,我在這裏閱讀:HTTPUrlConnection error (Can't open OutputStream after reading from an inputStream) HttpUrlConnection不能處理多個單個寫/讀。無論如何,這篇文章並沒有幫助我。

我讀過關於Jetty和Apache HttpClient的內容,但這些庫是2.8和4兆字節,比我必須編寫的應用程序大10倍以上。

所以:我在尋找一個非常簡單的和可能輕量級的Java庫來處理異步https連接,或者多次使用像HttpURLConnection的(連接第二個解決方案的方式將更多的理解,因爲我的程序沒有按不需要做任何更復雜的事情,我不必導入任何其他庫)。

btw:我使用太陽httpServer來製作https服務器,如果它是有用的知道。 如果你需要我發佈我的代碼的一些部分,讓你更好地瞭解我剛剛提出的問題。

感謝

+2

爲什麼不使用Apache HttpClient?除非你正在編寫一款智能手機應用程序,否則額外的4個兆字節是毫無意義的,因爲你無需看別的地方或自己推出自己的時間和金錢。 –

+0

實際上它不適用於智能手機,但我不能排除它需要移植。但無論如何,在你看來,apache httpclient以相對簡單的方式做我所需要的嗎?我的意思是我不需要做一些複雜的事情,因爲我說過,一旦它給了我https和異步請求,它就完成了我所需要的一切。所以如果你認爲apache客戶端從這個角度來看比jetty,ning或類似的庫更「好」,而不是解決方案。 – MastErAldo

回答

1

如果庫大小真正重要的,你可以考慮使用HttpCoreHttpCore是一組基於Apache HttpClient的低級HTTP傳輸組件。它的佔地面積大約是200-250 KB。

+0

感謝您的回覆,明天我會試着找出哪些圖書館更符合我的需求 – MastErAldo