跟著小白一起學鴻蒙--]簡單Http客戶端(十二)
在《#跟著小白一起學鴻蒙# [二] 第一個OpenHarmony程序》我們熟悉了如何在開源鴻蒙開發應用,并通過hdc工具拷貝至開發板運行。但是那時候我們只是打印了最簡單的hello world,接下來我們就講開發最常用的部分,一個簡單的http客戶端;
概述
- HTTP 是一個基于 TCP/IP 通信協議來傳遞數據(HTML 文件、圖片文件、查詢結果等)。
- HTTP是一個屬于應用層的面向對象的協議,由于其簡捷、快速的方式,適用于分布式超媒體信息系統。它于1990年提出,經過幾年的使用與發展,得到不斷地完善和擴展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的規范化工作正在進行之中,而且HTTP-NG(Next Generation of HTTP)的建議已經提出。
- HTTP協議工作于客戶端-服務端架構為上。瀏覽器作為HTTP客戶端通過URL向HTTP服務端即WEB服務器發送所有請求。Web服務器根據接收到的請求后,向客戶端發送響應信息。
HTTP請求消息Request
- 請求數據結構如下
- 一個Get的sample
在瀏覽器輸入www.baidu.com然后回車即可看到瀏覽器顯示了百度的頁面,按F12可以看到具體內容:
??上圖里我們可以看到在請求的url是www.baidu.com??,請求的方法是GET,服務器的IP地址是180.101.49.14:443(https,若是http就是80)。
- 一個Post的sample
- 上圖里我們可以看到在請求的url是https://cysz.hopethink.com/qhhsd/app/getH5HsdList,請求的方法是POST,服務器的IP地址是114.215.124.251:443(https,若是http就是80),請求內容類型application/x-www-form-urlencoded;charset=UTF-8,請求數據長度84,請求數據keyword=&streetId=&pageNum=1&pageSize=1&ip=222.95.30.84。
此樣例參考小熊派設計,使用小熊派HM_Micro開發板進行驗證。
應用開發流程
建立Build.gn。
建立helloworld.c。
添加httpget。
httppost:
在main里增加方法和頭文件。
- 頭文件
- 方法
測試結果:
Get測試結果:
Post測試結果:
總結
- http是建立在socket之上的數據結構化應用協議,可以通過拼socket包實現所有功能。
- 之后我們可以利用此接口實現一個核算地圖的界面應用。