在Java 中發出多部分/表單資料POST 請求:HTTP 用戶端替代方案
多部分/表單資料POST 請求是常見的必需品網路開發任務。雖然 Apache Commons HttpClient 版本 3.x 支援此功能,但它在版本 4.0 中已刪除。正如開發人員所指出的,多部分格式化被認為超出了其核心「HTTP」活動的範圍。
鑑於 HttpClient 4.0 中缺乏本機多部分支持,探索支持創建的替代 Java 庫變得至關重要能夠處理多部分/表單數據 POST 請求的 HTTP 客戶端。
探索多部分/表單資料的 Java 函式庫POST
一個流行的選擇是 HttpClient 4.x。它提供了一個現代且功能豐富的 HTTP 用戶端庫。對於多部分/表單資料請求,HttpClient 使用 MultipartEntityBuilder 來建構多部分實體。
HttpClient 4.x 的範例程式碼
HttpPost uploadFile = new HttpPost("..."); MultipartEntityBuilder builder = MultipartEntityBuilder.create(); builder.addTextBody("field1", "yes", ContentType.TEXT_PLAIN); builder.addBinaryBody("file", new FileInputStream(f), ContentType.APPLICATION_OCTET_STREAM, f.getName()); HttpEntity multipart = builder.build(); uploadFile.setEntity(multipart);
對於舊版的HttpClient 4.0(4.3之前),已棄用的API可以是使用:
HttpPost httppost = new HttpPost(url); FileBody bin = new FileBody(new File(fileName)); StringBody comment = new StringBody("Filename: " + fileName); MultipartEntity reqEntity = new MultipartEntity(); reqEntity.addPart("bin", bin); reqEntity.addPart("comment", comment); httppost.setEntity(reqEntity);
透過利用HttpClient 4.x 或其他Java庫的功能,開發人員可以輕鬆實現 HTTP 用戶端,輕鬆處理多部分/表單資料 POST 請求。
以上是如何在沒有 Apache Commons HttpClient 3.x 的情況下使用 Java 發出多部分/表單資料 POST 請求?的詳細內容。更多資訊請關注PHP中文網其他相關文章!