<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于Dragonbaord 410c開(kāi)發(fā)板實(shí)現JSON通信報文解析

基于Dragonbaord 410c開(kāi)發(fā)板實(shí)現JSON通信報文解析

作者: 時(shí)間:2017-10-11 來(lái)源:網(wǎng)絡(luò ) 收藏

在物聯(lián)網(wǎng)IOT設計和開(kāi)發(fā)中,我們通常會(huì )遇到一些數據交互和傳輸問(wèn)題,我們需要在不同的設備間傳遞數據進(jìn)行交互通信,通常我們需要選擇一個(gè)合適的數據交互協(xié)議和格式,這樣我們的設計才會(huì )得到極大的簡(jiǎn)化,和提高設計質(zhì)量,JSON是一種是一種輕量級的數據交換格式,近年來(lái)不僅被廣泛的使用在互聯(lián)網(wǎng)鄰域,同時(shí)在IOT領(lǐng)域也得到了廣泛的應用,利用JSON來(lái)進(jìn)行數據交互成為了眾多IOT設計方案的優(yōu)選,本節blog將在我們當前非常流行的IOT開(kāi)發(fā)套件draongboard 410c上來(lái)實(shí)現JSON報文的解析和應用。

本文引用地址:http://dyxdggzs.com/article/201710/365544.htm

這里我們使用的是Python腳本在dragonboard 410c上實(shí)現對JSON報文的解析,這里python提供了JSON庫模塊來(lái)處理JSON報文,這里我們只需要在dragonboard 410c上使用apt-get工具安裝JSON的python模塊即可,具體的安裝命令如下:

apt-get install -py

安裝好后,再使用import 導入即可使用該模塊了,利用該模塊來(lái)進(jìn)行JSON解析非常方便,下面我們就來(lái)看如何使用JSON模塊來(lái)快捷的實(shí)現對JSON報文的解析:

這里我們給出一個(gè)常用的系統用戶(hù)注冊報文示例,如下:

‘{

“report”:{

“from”:“MBD000000001”,

“to”:“MBS000000001”,

“TImeStamp”:“2017-1-14 12:45:32”,

“msg”:{

“type”:0,

“userName”:“test1”,

“userMD5”:“abdsetsasgt”,

“sexuality”:“男”,

“age”:“19”,

“phone”:“15361822674”,

“email”:“331212931@qq.com”

}

}

}’

在這個(gè)報文中,報文的收發(fā)者ID、時(shí)間戳、消息類(lèi)型、用戶(hù)名、用戶(hù)的密碼MD5值、用戶(hù)性別等信息等,發(fā)送該報文可以向dragonbaord 410c設備申請注冊,這里就以該注冊報文為例來(lái)教大家如何快速的編寫(xiě)python腳本來(lái)實(shí)現對JSON報文的解析。

具體的python代碼如下:

#coding:utf8

import sys

import

class MssageProcessing:

def __init__(self,recvMsg):

self.reporTIsError=0

self.reporTID=“”

self.toID=“”

try:

self.reportJosn=json.loads(recvMsg)[“report”]

self.msgJosn=self.reportJosn[“msg”]

self.fromID=self.getFromID()

if self.fromID!=“error”:

self.reporTIsError=0

else:

self.reportIsError=1

self.toID=self.getToID()

if self.toID!=“error”:

self.reportIsError=0

else:

self.reportIsError=1

except:

print(“recv report is error”)

self.reportIsError=1

def updateMsg(self,recvMsg):

self.reportJosn=json.loads(recvMsg)[“report”]

self.msgJosn=self.reportJosn[“msg”]

self.fromID=self.getFromID()

self.toID=self.getToID()

self.mobaiServiceID=“MBS000000001”

def getFromID(self):

fID=self.reportJosn[“from”]

print(fID)

if len(fID)!=12:

return “error”

else:

if fID[0:3]==“MBS” or fID[0:3]==“MBU” or fID[0:3]==“MBD”:

try:

int(fID[3:])

return fID

except:

return “error”

else:

return “error”

def getToID(self):

print(self.reportJosn[“to”])

return self.reportJosn[“to”]

def getTimeStamp(self):

print(self.reportJosn[“timeStamp”])

return self.reportJosn[“timeStamp”]

def getMsgType(self):

print(self.msgJosn[“type”])

return self.msgJosn[“type”]

if __name__==“__main__”:

recvMsg=MssageProcessing(‘{“report”:{“from”:“000000000001”,“to”:“000000000002”,“timeStamp”:“2017-1-14 12:45:32”,“msg”:{“type”:0,“userName”:“test1”,“userMD5”:“abdsetsasgt”,“sexuality”:“男”,“age”:“19”}}}’)

recvMsg.getFromID()

recvMsg.getToID()

recvMsg.getMsgType()

[userName,userMD5,sexuality,age]=recvMsg.registerMessageHandle()

print(userName)

print(userMD5)

運行上述代碼我們就可以看到,我們可以獲取報文中對應字段標簽的內容進(jìn)行打印,表示對JSON報文解析成功。



關(guān)鍵詞: DragonBoard410c json

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>