那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

4G 模組 HTTP 網絡協議應用 白嫖版!

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2024-10-30 14:22 ? 次閱讀

今天我們來白嫖的是Air780E模組LuatOS開發4G通信中HTTP網絡協議的應用,實現模組和服務器之間數據的傳輸,詳細介紹硬件環境、軟件環境、功能驗證等…

1、HTTP概述

1.1 簡介

HTTP是HyperTextTransferProtocol(超文本傳輸協議)的縮寫。HTTP是一個應用層協議,由請求和響應構成,是一個標準的客戶端服務器模型。HTTP是一個無狀態的協議。HTTP協議通常承載于TCP協議之上,有時也承載于TLS或SSL協議層之上,這個時候,就成了我們常說的HTTPS,所以HTTPS相關的指令只需要參考SSL部分配置連接,其他和http都是一樣的。

HTTP協議的_主要應用場景_有:基于瀏覽器的網頁獲取與表單提交、文件上傳與下載、移動應用、物聯網設備的數據上報等。

1.2 請求報文

wKgZoWchyiCASVusAADoAVkxpR0334.png

●method:請求方法,GET和POST是最常見的HTTP方法。

●URL:為請求對應的URL地址,它和報文頭的Host屬性組成完整的請求URL。

●Version:協議名稱及版本號。

●Headerlines:HTTP的報文頭,報文頭包含若干個屬性,格式為“屬性名:屬性值”,服務端據此獲取客戶端的信息

●Entitybody:是報文體,它將一個頁面表單中的組件值通過param1=value1&m2=value2的鍵值對形式編碼成一個格式化串,它承載多個請求參數的數據。

●請求報文示例如下:

wKgaoWchyj2AFbtzAAPQ64HNwo0363.png

1.3 響應報文

wKgaoWchyleAYdd2AAGTBfu5Kao390.png

●version:報文協議及版本。

●statuscode:狀態碼及狀態描述。

●phrase:原因短語。

●Headerlines:響應報文頭。

●Entitybody:響應報文體,即我們真正要的內容。

●響應報文示例如下:

wKgaoWchyn-Af2vGAAGsgktgiNk689.png

注意:sp表示空格,crlf表示回車換行,報文頭和報文體之間要有一行空格

1.4 HTTP請求方法

HTTP客戶端發出請求,告知服務端需要執行不同類型的請求命令,這些命令被稱為HTTP方法。

●GET:獲取資源方法

●POST:傳輸實體數據方法

●HEAD:獲取頭部報文方法

●PUT:傳輸文件方法

●DELETE:刪除指定資源方法

1.5 HTTP狀態碼

HTTP狀態碼由三個十進制數字組成,第一個十進制數字定義了狀態碼的類型。響應分為五類:

●信息響應(100–199),信息響應中,服務器收到請求,需要請求者繼續執行操作;

●成功響應(200–299),信息響應成功,操作被成功接收并處理;

●重定向,需要進一步操作(300–399),信息需要被重新定向,需要進一步的操作以完成請求;

●客戶端錯誤(400–499),客戶端錯誤,請求包含語法錯誤或無法完成請求;

●服務器錯誤(500–599),服務器錯誤,服務器在處理請求的過程中發生了錯誤。

2演示功能概述

本文教你合宙4G模組使用LuatOS開發4G通信中http網絡協議的應用,實現模組和服務器之間數據的傳輸!

教程實現的功能定義是:

使用Air780E核心板下載Air780的LuatOS示例代碼中http的例程進行驗證,包含get請求,post請求,文件上傳,文件下載等功能。

3、硬件環境

3.1 Air780E核心板

使用Air780E核心板。

此核心板的詳細使用說明參考:Air780E產品手冊中的<<開發板Core_Air780E使用說明VX.X.X.pdf>>,寫這篇文章時最新版本的使用說明為:開發板Core_Air780E使用說明V1.0.5.pdf;核心板使用過程中遇到任何問題,可以直接參考這份使用說明pdf文檔。

3.2 SIM

中國大陸環境下,可以上網的sim卡,一般來說,使用移動,電信,聯通的物聯網卡或者手機卡都行;

3.3 PC電腦

WINDOWS系統,其他暫無特別要求;

3.4 數據通信線

USB數據線,暫無特別要求;

4、軟件環境

4.1 Luatools工具

要想燒錄AT固件到4G模組中,需要用到合宙的強大的調試工具:Luatools;

詳細使用說明參考:Luatools工具使用說明。

Luatools工具集具備以下幾大核心功能:

一鍵獲取最新固件:自動連接合宙服務器,輕松下載最新的合宙模組固件。

固件與腳本燒錄:便捷地將固件及腳本文件燒錄至目標模組中。

串口日志管理:實時查看模組通過串口輸出的日志信息,并支持保存功能。

串口調試助手:提供簡潔的串口調試界面,滿足基本的串口通信測試需求。

Luatools下載之后,無需安裝,解壓到你的硬盤,點擊Luatools_v3.exe運行,出現如下界面,就代表Luatools安裝成功了.

4.2 準備需要燒錄的代碼

首先要說明一點:腳本代碼,要和固件的bin文件一起燒錄。

4.2.1 燒錄的底層固件文件

底層core下載地址:LuatOS固件版本下載地址

wKgZoWchys2AXUqYAAFD1GnW3pA704.png

Air780E的底層固件在Luatools解壓后目錄的LuatOS-SoC_V1112_EC618_FULL.soc

wKgZoWchyuSAIB5MAADxCQ_P09M775.png

4.2.2 燒錄的腳本代碼

首先要下載Air780的LuatOS示例代碼到一個合適的項目目錄,示例代碼網站:https://gitee.com/openLuat/LuatOS-Air780E

下載流程參考下圖:

wKgZoWchywaAOOKUAARZCpO3B2Q259.png

下載的文件解壓,找到

LuatOS-Air780E-masterdemohttpmain.lua,如圖:

wKgaoWchyzWAJgy1AADtNHKY2_o604.png

4.3 燒錄步驟

4.3.1 正確連接電腦和4G模組電路板

使用帶有數據通信功能的數據線,不要使用僅有充電功能的數據線;

4.3.2 識別4G模組的boot引腳

在下載之前,要用模組的boot引腳觸發下載,也就是說,要把4G模組的boot引腳拉到1.8v,或者直接把boot引腳和VDD_EXT引腳相連。我們要在按下BOOT按鍵時讓模塊開機,就可以進入下載模式了。

具體到Air780E開發板:

1、當我們模塊沒開機時,按著BOOT鍵然后長按PWR開機。

2、當我們模塊開機時,按著BOOT鍵然后點按重啟鍵即可。

4.3.3 識別電腦的正確端口

判斷是否進入BOOT模式:模塊上電,此時在電腦的設備管理器中,查看串口設備,會出現一個端口表示進入了boot下載模式,如下圖所示:

wKgaoWchy1uAA9CHAAIDDiN8Izs498.png

當設備管理器出現了3個連續數字的com端口,并且每個數字都大于4,這時候,硬件連接上就緒狀態,恭喜你,可以進行燒錄了!

4.3.4 用LuatOS工具燒錄

新建項目

首先,確保你的Luatools的版本,上大于3.0.6版本的。

在Luatools的左上角上有版本顯示的,如圖所示:

wKgaoWchy3GAB9w9AAFGnb0t-_M317.png

Luatools版本沒問題的話,就點擊LuaTOols右上角的“項目管理測試”按鈕,如下圖所示:

wKgZoWchy4mATiX9AAGABdTyE0k416.png

這時會彈出項目管理和燒錄管理的對話框,如下圖:

wKgZomchy5uAOdR8AAKtKOOA9J0734.png

開始燒錄

選擇780E板子對應的底層core和剛改的main.lua腳本文件。下載到板子中。

wKgZoWchy7CAA4o_AALyvk9vu3I012.png

點擊下載后,我們需要進入boot模式才能正常下載。

wKgaoWchy8KANVQXAAGAmk-sf7c260.png

5API說明

http客戶端:

http.request(method,url,headers,body,opts,ca_file,client_ca,client_key,client_password)

參數

傳入值類型 解釋
string
請求方法,支持GET/POST等合法的HTTP方法
string
url地址,支持http和https,支持域名,支持自定義端口
tabal
請求頭可選例如{[“Content-Type”]=“application/x-www-form-urlencoded”}
string/zbuff
body可選
table
額外配置可選包含timeout:超時時間單位ms可選,默認10分鐘,寫0即永久等待dst:下載路徑,可選adapter:選擇使用網卡,可選debug:是否打開debug信息,可選,ipv6:是否為ipv6默認不是,可選callback:下載回調函數,參數content_len:總長度body_len:以下載長度userdata用戶傳參,可選userdata:回調自定義傳參
string
服務器ca證書數據,可選,一般不需要
string
客戶端ca證書數據,可選,一般不需要,雙向https認證才需要
string
客戶端私鑰加密數據,可選,一般不需要,雙向https認證才需要
string
客戶端私鑰口令數據,可選,一般不需要,雙向https認證才需要

返回值

返回值類型 解釋
int
code,服務器反饋的值>=100,最常見的是200.如果是底層錯誤,例如連接失敗,返回值小于0
tabal
headers當code>100時,代表服務器返回的頭部數據
string/int
body服務器響應的內容字符串,如果是下載模式,則返回文件大小

創建HTTP客戶端

wKgaomchy_yAahSfAATO0zjNbmY251.png

6、功能驗證

6.1 GET請求

HTTPGET請求是一種用于從指定資源URI(統一資源標識符)請求數據的HTTP方法。它通常用于請求服務器發送資源(如HTML頁面、圖片等)給客戶端,且請求信息包含在URL中。

下面根據demo演示HTTP的GET請求用法,示例代碼如下(具體demo可以點此鏈接跳轉)

示例如下:

wKgZoWchzC6AZeNvAAUGZGKq_Ko389.pngwKgaoWchzE2AaCgeAAF30jGnFtM892.png

對應log:

wKgaoWchzF-AAvsTAADqI_02Zow137.png

6.2 POST請求

HTTPPOST請求是一種HTTP方法,用于向指定的資源提交數據。與GET請求不同,POST請求的數據包含在請求體中,可以提交大量數據且數據不會顯示在URL中,常用于提交表單數據或上傳文件等操作。

下面根據demo演示HTTP的POST請求方法提交一個表單,示例代碼如下(具體demo可以點此鏈接跳轉)

示例:

wKgZomchze2AD6X_AAPstgbqdf0505.pngwKgaomchzbGAPNC7AAIMNvzzi-E303.png

對應log:

wKgZomchzgiARB76AAEVlfDhJtY646.png

6.3 文件上傳

HTTPPOST請求在文件上傳場景中發揮著關鍵作用。用戶通過POST請求可以將文件數據包含在請求體中發送給服務器,而不是像GET請求那樣通過URL傳遞。這種方式允許上傳大量數據,包括各種類型的文件,如圖片、視頻、文檔等。服務器接收到請求后,會解析請求體中的文件數據,并存儲到服務器上相應的位置。文件上傳是HTTP應用中常見的功能。

下面根據demo演示HTTP文件上傳的功能,示例代碼如下(具體demo可以點此鏈接跳轉)

示例:

wKgZoWchziCAYBNxAAPKGg3cW68000.pngwKgZoWchzkOAY9FhAAUKMOq0DI8547.pngwKgZoWchzm2AUt-tAAUUVvr8Dkg233.pngwKgZoWchzpSAHl98AARflI_dsgo849.pngwKgaomchzqWADE9GAAHWVdmWosY525.png

對應log:

wKgZomchzraAetJJAAFXFT_WpHs869.png

6.4 文件下載

下面根據demo演示HTTP文件下載的功能,示例代碼如下(具體demo可以點此鏈接跳轉)

示例:

wKgaomchz_-AZ-DIAAOk64EGdHA868.png

對應log:

wKgaomch0BWAOjxLAASQ1RBMzT0405.png

6.5 處理JSON數據

處理json數據主要有兩個函數,json.encode(t)和json.decode(str),參考示例代碼:

https://gitee.com/openLuat/LuatOS-Air780E/tree/master/demo/json

wKgaomch0CiASFZwAAFQHhdk4ng460.png

6.6 壓縮和解壓

這個例程用和風天氣的api做演示,請求到的數據配合miniz庫進行解壓,示例代碼如下(具體demo可以點此鏈接跳轉)

示例:

wKgZomch0D-AFyHpAAHb1fIY5L8858.png

對應log:

wKgZoWch0FGAaMPXAAKEYUEPqiY239.png

也可以參考例程:

https://gitee.com/openLuat/LuatOS-Air780E/tree/master/demo/miniz

wKgZoWch0GaAZKc5AAIaoFWem_w302.png

7、總結

本文檔主要介紹4G通信中http網絡協議的應用。講解了HTTP基本原理,GET和POST請求,以及文件上傳下載、HTTPS加密、JSON數據處理和數據壓縮等高級功能,直接燒錄例程即可測試,旨在實現高效、安全的數據傳輸。

8、常見問題

8.1 HTTP支持多連接嗎

目前HTTP僅支持單連接,不支持多連接。

8.2 重試多次PDP,HTTP應用一直連接失敗

如果重試多次PDP激活,PDP一直激活失敗,或者HTTP一直請求應答失敗,則嘗試使用如下手段恢復:

1、使用RESET引腳復位模塊

2、極端情況下,直接給模塊斷電,再上電,POWERKEY引腳拉低開機

8.3 為什么我只發了10字節消息,100次卻消耗了那么多流量?

因為還有HTTP自帶的請求頭。如何統計流量

8.4 為什么頻繁請求會失敗?

支持的http連接總數有限數量為tcp連接數量8個,建議一個http連接返回請求結果之后,再去請求下一個連接;不要使用循環定時器方式不斷的發起新的http請求。

8.5 專網卡訪問白名單

用定向Ip的物聯網卡,需要把域名或IP加入白名單才能使用。如果不加入白名單會出現無法訪問服務器的情況.

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 4G
    4G
    +關注

    關注

    15

    文章

    5530

    瀏覽量

    119519
  • 物聯網
    +關注

    關注

    2913

    文章

    44924

    瀏覽量

    376969
  • 網絡協議
    +關注

    關注

    3

    文章

    269

    瀏覽量

    21632
  • HTTP
    +關注

    關注

    0

    文章

    511

    瀏覽量

    31518
  • LuatOS
    +關注

    關注

    0

    文章

    76

    瀏覽量

    2000
收藏 人收藏

    評論

    相關推薦

    篇:4G 模組 MQTT 通信功能!

    今天我們的是4G 模組 MQTT 通信功能!以AIR708E開發板為例 從MQTT介紹,演示功能概述,準備硬件環境,準備軟件環境,代碼示例介紹等給大家展示明白
    的頭像 發表于 10-30 14:53 ?1429次閱讀
    <b class='flag-5'>白</b><b class='flag-5'>嫖</b>篇:<b class='flag-5'>4G</b> <b class='flag-5'>模組</b> MQTT 通信功能!

    4G網絡的概念

    自從有了3G,就開始了對4G的暢想與建設。如今3G網絡搞的如火如荼,三大運營商不斷針對自己的優勢調低資費,吸引用戶,以擴大市場占有率;與此同時,4G
    發表于 07-15 06:04

    MiniPCIE 封裝4G模組價值仍在

    領域,實現M2M領域的較高速聯網通訊。 目前市面上的4G模組封裝大概主要分兩種形態,貼片式和miniPCIE式; 貼片式的模組應用很普遍,但是miniPCIE形態的模組也廣泛應用于各種
    發表于 02-21 11:57

    Xray高級版如何破解?

    Xray高級版破解指南
    發表于 11-06 06:50

    4g網絡是什么意思_4g手機介紹

    4g網絡介紹 1.1 4g網絡是什么意思? 4G是第四代移動通信及其技術的簡稱,是集3G與WLA
    發表于 09-17 17:36 ?6.5w次閱讀

    移動4G是什么?4G網絡能做什么?怎么用?

    面對越來越近的移動4G網絡,你是否了解?本文就移動4G網絡是什么,4G網絡能做什么,怎么用等問題
    發表于 05-24 14:16 ?15w次閱讀

    4G模組

    4G模組:CR100IP-AHD-TF1-1F
    發表于 03-21 20:02 ?0次下載

    4G模塊是什么4G模塊的類別4G模塊的選擇

    ,具備通訊更快、互聯網頻帶寬、通訊靈活性等特性。4G模塊就是指硬件設備載入到特定頻率段,手機軟件兼容規范的LTE協議書,硬件軟件高寬比集成化模組化的一種商品的通稱。硬件設備將頻射、基帶集成化在一塊PCB
    的頭像 發表于 10-24 18:56 ?5.2w次閱讀

    4G模組4G模塊是什么?4G模組4G模塊的平臺?4G模組4G模塊怎么選?ASR RDA 高通

    頻帶寬、通訊靈活性等特性。4G模塊就是指硬件設備載入到特定頻率段,3GPPP規范的LTE協議書,硬件軟件高度集成化模組化通稱。硬件設備將
    的頭像 發表于 06-07 19:50 ?1.5w次閱讀

    工業級4G路由器模組的功能

    咱實誠的工程師較真了將無線CPE解決方案工業級4G路由器模組帶到戶外深山進行了網速,信號等測試。雖然穩定不掉線,但還是具備有有線/4G/WIFI智能切換備份的功能,有線網絡斷開可以自動
    發表于 08-24 10:35 ?930次閱讀

    4G終端主板盒測試報告

    4G終端主板盒測試報告
    發表于 09-30 16:35 ?17次下載

    大彩串口屏4G應用-HTTP定位和獲取天氣

    大彩串口屏4G應用-HTTP定位和獲取天氣:本例程中,通過獲取天氣、定位來介紹4GHTTP GET的應用。
    的頭像 發表于 07-22 16:40 ?1994次閱讀
    大彩串口屏<b class='flag-5'>4G</b>應用-<b class='flag-5'>HTTP</b>定位和獲取天氣

    大彩串口屏4G應用-HTTP下載文件

    大彩串口屏4G應用-HTTP下載文件:本例程中,介紹4GHTTP下載的應用,通過下載圖片、視頻、音頻說明下載流程。
    的頭像 發表于 07-26 14:56 ?1593次閱讀
    大彩串口屏<b class='flag-5'>4G</b>應用-<b class='flag-5'>HTTP</b>下載文件

    5G4G的區別 5g網絡4g網絡耗電嗎?5g功耗是4g的多少倍?

    5G4G的區別 5g網絡4g網絡耗電嗎?5g功耗
    的頭像 發表于 10-19 17:08 ?3814次閱讀

    低功耗4G模組HTTP網絡協議應用

    ?大家好,今天我們來學習合宙Air780E模組LuatOS開發4G通信中HTTP網絡協議的應用,實現模組
    的頭像 發表于 11-01 07:23 ?286次閱讀
    低功耗<b class='flag-5'>4G</b><b class='flag-5'>模組</b><b class='flag-5'>HTTP</b><b class='flag-5'>網絡</b><b class='flag-5'>協議</b>應用
    南京百家乐的玩法技巧和规则| 百家乐官网必胜绝技| 百家乐官网发脾机| 博彩百家乐最新优惠| 百家乐官网注册赠金| 网上百家乐是假| 墨玉县| 沙龙百家乐怎申请| 皇冠网新2| 租nongcun房看风水做生意的| 德州扑克加注规则| 天博百家乐官网娱乐城| 12bet| 百家乐试玩全讯网2| 大地百家乐的玩法技巧和规则 | 大丰收百家乐官网的玩法技巧和规则| 百家乐导航| 百家乐官网博乐城| 大发888体育场下载| 百家乐官网博弈指数| 顶级赌场官网下载| 百家乐视频大厅| 西峡县| 百家乐官网购怎么样| 大发888游戏平台hgdafa888gw| 百家乐官网不锈钢| 无锡市| 神娱乐百家乐的玩法技巧和规则 | 百家乐代理合作| 至尊百家乐20130402| 德州百家乐官网赌博规则| 大发888网页游戏| 百家乐视频地主| 百家乐官网有不有作弊| 黄金城百家乐手机用户| 财富百家乐官网的玩法技巧和规则| 外围赌球| 百家乐机器图片| 百家乐官网打印机破解| 博彩太阳城| 功夫百家乐的玩法技巧和规则 |