HTTP協(xié)議工作于客戶(hù)端-服務(wù)端架構(gòu)為上。瀏覽器作為HTTP客戶(hù)端通過(guò)URL向HTTP服務(wù)端即Web服務(wù)器發(fā)送所有請(qǐng)求。Web服務(wù)器根據(jù)接收到的請(qǐng)求后,向客戶(hù)端發(fā)送響應(yīng)信息。更多HTTP介紹。本文將利用串口服務(wù)器NS1的HTTP客戶(hù)端模式上傳服務(wù)器數(shù)據(jù)。
在客戶(hù)機(jī)和服務(wù)器之間進(jìn)行請(qǐng)求-響應(yīng)時(shí),兩種最常被用到的方法是:GET 和 POST。GET :從指定的資源請(qǐng)求數(shù)據(jù)。POST :向指定的資源提交要被處理的數(shù)據(jù)。HTTP 請(qǐng)求由請(qǐng)求行(request line)、請(qǐng)求頭部(header)、空行和請(qǐng)求數(shù)據(jù)四個(gè)部分組成:
請(qǐng)求行:請(qǐng)求方法、請(qǐng)求 URL、協(xié)議版本。
請(qǐng)求頭:由關(guān)鍵字/值對(duì)組成,每行一對(duì),關(guān)鍵字和值用英文冒號(hào)“:”分隔。
請(qǐng)求數(shù)據(jù):HTTP 請(qǐng)求中發(fā)送到服務(wù)器的數(shù)據(jù)。
HTTP請(qǐng)求的格式:
例如:
1:請(qǐng)求行,用來(lái)說(shuō)明請(qǐng)求類(lèi)型,要訪問(wèn)的資源以及所使用的HTTP版本。
2:請(qǐng)求頭部。Content-Length:用來(lái)指明發(fā)送給接收方的消息主體的大小。Host:客戶(hù)端指定自己想訪問(wèn)的WEB服務(wù)器的域名/IP 地址和端口號(hào)。Content-Type:WEB 服務(wù)器告訴瀏覽器自己響應(yīng)的對(duì)象的類(lèi)型。
3:消息主體。
選擇“TCP創(chuàng)客云”,新建主題,主題名可任意。
在巴法云實(shí)例指南->Tcp、Mqtt、http調(diào)試工具和教程 中給出的HTTP說(shuō)明:
在使用postman對(duì)創(chuàng)建的主題發(fā)送數(shù)據(jù)時(shí):
1:支持POST指令。
2:請(qǐng)求 URL為http://apis.bemfa.com/va/postmsg。
3:使用x-www-form-urlencoded或raw需要添加頭部字段Content-Type。
4:如果要上傳數(shù)據(jù)到創(chuàng)建的主題中,需要在參數(shù)中指定巴法云賬號(hào)的私鑰、創(chuàng)建主題的名稱(chēng)、type類(lèi)型固定為3、msg后面跟的數(shù)據(jù)就是上傳到主題中的數(shù)據(jù)。
1.使用網(wǎng)絡(luò)調(diào)試助手要給巴法云賬戶(hù)私鑰為f6fd5a9f1eff42feb7225f373efde660主題為LED發(fā)送數(shù)據(jù)TEST。
POST /va/postmsg HTTP/1.1
Host:apis.bemfa.com
Content-Type: application/x-www-form-urlencoded
Content-Length:62
uid=f6fd5a9f1eff42feb7225f373efde660&topic=LED&type=3&msg=TEST
服務(wù)器成功返回200,表明該請(qǐng)求被成功地完成,所請(qǐng)求的資源發(fā)送到客戶(hù)端。
1.狀態(tài)代碼有三位數(shù)字組成,第一個(gè)數(shù)字定義了響應(yīng)的類(lèi)別,共分五種類(lèi)別:
1xx:指示信息--表示請(qǐng)求已接收,繼續(xù)處理
2xx:成功--表示請(qǐng)求已被成功接收、理解、接受
3xx:重定向--要完成請(qǐng)求必須進(jìn)行更進(jìn)一步的操作
4xx:客戶(hù)端錯(cuò)誤--請(qǐng)求有語(yǔ)法錯(cuò)誤或請(qǐng)求無(wú)法實(shí)現(xiàn)
5xx:服務(wù)器端錯(cuò)誤--服務(wù)器未能實(shí)現(xiàn)合法的請(qǐng)求
1.一般情況下,服務(wù)器接收并處理客戶(hù)端發(fā)過(guò)來(lái)的+請(qǐng)求后會(huì)返回一個(gè)HTTP的響應(yīng)消息。HTTP響應(yīng)也由四個(gè)部分組成,分別是:狀態(tài)行、消息報(bào)頭、空行和響應(yīng)正文。
1:第一部分:狀態(tài)行,由HTTP協(xié)議版本號(hào), 狀態(tài)碼, 狀態(tài)消息 三部分組成。
2:第二部分:消息報(bào)頭,用來(lái)說(shuō)明客戶(hù)端要使用的一些附加信息。
3:第三部分:空行,消息報(bào)頭后面的空行是必須的。
4:第四部分:響應(yīng)正文,服務(wù)器返回給客戶(hù)端的文本信息。
1.使用億佰特網(wǎng)絡(luò)配置助手,打開(kāi)配置頁(yè)面。設(shè)置串口服務(wù)器:
1:網(wǎng)絡(luò)工作模式選擇HTTP客服端。
2:目標(biāo)IP/域名apis.bemfa.com。
3:目標(biāo)端口80。
4:HTTP URL路徑 /va/postmsg。
5:HTTP包頭 Host:apis.bemfa.com與Content-Type: application/x-www-form-urlencoded。
設(shè)置完成后保存設(shè)置、重啟設(shè)備。
1.串口服務(wù)器網(wǎng)口連接上網(wǎng)絡(luò),通過(guò)串口助手上報(bào)數(shù)據(jù),并使用平臺(tái)查詢(xún)上報(bào)數(shù)據(jù)是否成功。
2.關(guān)閉包頭返回后的接收:
1.使用網(wǎng)絡(luò)調(diào)試助手,通過(guò)GET方式請(qǐng)求百度主頁(yè)。不帶任何包頭數(shù)據(jù)也可以實(shí)現(xiàn)請(qǐng)求“百度”,并收到<HTML>數(shù)據(jù)返回,如圖所示:
1:請(qǐng)求行。
2:請(qǐng)求頭部+換行符,此時(shí)請(qǐng)求頭部為空。
3:消息主體。
2.使用串口服務(wù)器GET百度,先打開(kāi)億佰特網(wǎng)絡(luò)配置助手,配置如下:
3.使用串口調(diào)試助手發(fā)送“/”,就可以收到HTTP服務(wù)器返回的數(shù)據(jù),通過(guò)對(duì)HTML(超文本標(biāo)記語(yǔ)言)解析就可以得到“百度”的主頁(yè)。
今天的分享就到這里啦,EBYTE每一天都致力于更好的助力物聯(lián)化、智能化、自動(dòng)化的發(fā)展,提升資源利用率,更多串口服務(wù)器、數(shù)傳電臺(tái)、lora模塊等無(wú)線數(shù)傳模塊產(chǎn)品更多資料,感興趣的小伙伴可以登錄我們的億佰特官網(wǎng)進(jìn)行了解,也可以直接撥打400電話咨詢(xún)技術(shù)專(zhuān)員!
相關(guān)閱讀:
7 X 24 銷(xiāo)售服務(wù)熱線
4000-330-990深圳辦事處柯經(jīng)理:18218726658 無(wú)錫辦事處劉經(jīng)理:13558641933
成都總部銷(xiāo)售經(jīng)理:
秦 科(無(wú)線模塊):18884314654 馮子恒(無(wú)線模塊):18828049434
蔡友銀(無(wú)線模塊):13882211021 葛宇龍(通信設(shè)備):19138800613
胡兵(外貿(mào)銷(xiāo)售經(jīng)理):18584911141、 sales06@ebyte.com
業(yè)務(wù)郵箱:support@cdebyte.com 全國(guó)銷(xiāo)售投訴電話:19934352316
地址:四川省成都市高新西區(qū)西區(qū)大道199號(hào)B5棟(前臺(tái)座機(jī):028-61543675)
?? 成都億佰特電子科技有限公司【版權(quán)所有】 蜀ICP備13019384號(hào)