首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2ME

無線 J2ME 設備實現 HTTP 傳輸(二):POST 請求完整實現與核心代碼

     編輯:J2ME

發送 HTTP POST 請求的關鍵步驟

基於 GET 請求修改:

  1. 新增 DataOutputStream DOS 與請求體字串 requestBody。
  2. Connector.open(url, Connector.READ_WRITE) 開啟可讀寫連線。
  3. hcon.setRequestMethod(HttpConnection.POST) 設定方法。
  4. 取得 DOS = hcon.openDataOutputStream()。
  5. 將 requestBody 轉位元組陣列,逐位元組寫入 DOS,最後 DOS.flush()。
  6. 後續開啟 InputStream 讀取回應,finally 區塊關閉所有資源(含 DOS)。

關於 flush() 的陷阱:部分手機調用後會導致 Transfer-Encoding: chunked 並在請求首尾插入亂碼。實際上 openInputStream() 會自動刷新緩衝,建議省略 flush()。

完整 MIDlet 範例:HttpMidlet

提供完整可編譯代碼:

  • GUI:輸入 URL 的 Form、選擇 GET/POST 的 List、顯示回應的 Form。
  • 命令:SEND、EXIT、BACK。
  • sendHttpGet() 與 sendHttpPost() 完整實現,含異常處理與資源釋放。
  • POST 請求體固定為 "This is a POST."。

隨著無線設備普及,HTTP 作為 MIDP 唯一強制支援協議,是無線網絡應用首選。文中探討基本結構與核心問題,期待開發者把握機遇。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved