MagicURLNetwork─讓Java使用URL透過網路上傳與下載資料


在開發應用程式的時候常會需要連到網際網路上取得一些資料或是傳送一些資料出去,而這當中最常使用的協定就是HTTP了!在Java中,若要使用HTTP、HTTPSFTP等協定來進行連線,可以使用java.net套件下的URLConnection。但是URLConnection過於底層,使用起來十分麻煩,因此許多人會改用Apache HttpComponents提供的HttpClient,只不過HttpClient的功能實在是太多了,需要引用一大堆Apache的Library,使用起來效能也似乎不如直接使用URLConnection。這篇文章將提供一個較為簡易的方式實作出HTTP和HTTPS的GET與POST Request方法,以及FTP檔案下載的功能。

MagicURLNetwork是以URLConnection為基礎,支援HTTP和HTTPS協定的GET、POST、PUT、HEAD、DELETE Request方法,以及FTP檔案下載的函式庫。

取得MagicURLNetwork

https://github.com/magiclen/MagicURLNetwork

本站下載

使用MagicURLNetwork

GET

使用MagicURLNetwork發出GET Request的方法很簡單,以Youtube搜尋來舉例,程式如下:

如果要GET的資料不是文字,而是一個二進制(Binary)的檔案的話,可以使用setTargetFile方法,將檔案儲存在磁碟中,如以下程式:

當然要將文字存到檔案內也是可以的,只是通常不會特地這樣做。

POST、SinglePOST、PUT、HEAD、DELETE

MagicURLNetwork其餘的Requeest方式,跟GET可以幾乎是一模一樣,看用途來使用。

加入NetworkListener

如果要取得MagicURLNetwork目前的連線狀況和發生錯誤時的錯誤訊息,可以設定一個NetworkListener物件給MagicURLNetwork,如以下程式:

關於作者

Magic Len

各位好,我是Magic Len,是這網站的管理員。我是台灣台中大肚山上人,畢業於台中高工資訊科和台灣科技大學資訊工程系,曾在桃機航警局服役。我熱愛自然也熱愛科學,喜歡和別人分享自己的知識與經驗。如果你有興趣認識我,可以加我的Facebook,並且請註明是從MagicLen來的。

相關文章