1. 程式人生 > >使用HttpClient4提交包含上傳檔案的表單

使用HttpClient4提交包含上傳檔案的表單

第一步,還是得到Httpclient,得到請求方式httppost

第二步,得到entity,鍵值對儲存資料,用來與伺服器進行互動,因為是檔案,所以採用了multipartentity,將資料存進entity

第三步,將httppost攜帶entity資料,尋找引用httppost.setentity

第四步,httpclient尋找httppost引用,執行

今天做專案,需要呼叫新浪微博的API,由於專案的特殊性,採取了自己實現API呼叫程式碼的功能。新浪微博的API呼叫是才用https的方式,在發表微博的時候,需要才用POST的方式來提交引數。如果需要上傳圖片,則同時提交一個名稱為pic的byte[]陣列。

部分程式碼,僅供參考: HttpPost httppost = new HttpPost("http://blog.sina.com/yangyanyangyanyangyan/article_add.php");  FileBody bin = new FileBody(new File("d:/123.JPG"));  StringBody s = new StringBody("新浪微博");  MultipartEntity reqEntity = new MultipartEntity();  //關鍵 reqEntity.addPart("pic", bin);  reqEntity.addPart("status", s);
//可以設定charset,如果發出去的中文是亂碼,則可以設定Charset引數來設定編碼 httppost.setEntity(reqEntity); HttpResponse response = httpclient.execute(httppost);