本篇來介紹JSON
閱讀目錄
什么是JSON
JSON,全稱是JavaScript Object Notation ,指的是 JavaScript 對象表示法,是一種輕量級的數據交換格式,JSON獨立於語言,很多計算機語言都能支持JSON。
應用JSON的場合
(1)web開發中前端把HTTP請求中的數據通過JSON的格式發送給后端。
(2)web開發中后端把要返回的數據通過JSON的格式放置在Response的Body中,前端收到數據后,對JSON進行解析。
(3)各種服務之間的數據傳輸也經常使用JSON格式。
JSON的語法
JSON 數據的書寫格式是:名稱:值
例如 “MyName” : “Jim”
鍵的名稱被英文雙引號所包裹,鍵和值直接用英文冒號所分割
完整格式是 名稱:值 被大括號號所包裹,例如 {“MyName“: “Jim“} 如下圖代碼所示為典型的JSON格式
{“MyName” : “XiaoSu”}
值得注意的是鍵的名稱大小寫是敏感的,如以下兩個JSON對象就是不同的兩個對象
{“MyName” : “XiaoSu”} //鍵名稱是MyName
{“myName” : “XiaoSu”} //鍵名稱是myName
如果有多個鍵值對,則鍵值對直接用英文逗號所分割,如下圖代碼所示
{“MyName” : “Jim”, “ MyAge” : “22“ } //2個鍵值對
{“MyName” : “Jim”, “MySex” : “男”, “ MyAge” : “22“} //3個鍵值對
如果對象中沒有鍵值對,那這個JSON對象就是空對象
{} //空對象
JSON值的類型
JSON 值可以是:
數字(整數或浮點數)
字符串(在雙引號中)
邏輯值(true 或 false)
數組(在方括號中)
對象(在花括號中)
null (意思是空值)
{“MyAge” :29 } // 值是數字
{“MyName” : “Jim”} //值是字符串
{“MyError” : true} //值是布爾邏輯值
{“YouValue” : null} //值是空
JSON數組
JSON數組就是多個JSON對象可以組成的集合。
JSON數組的書寫格式就是方括號包含多個JSON對象,JSON對象與JSON對象之間用因為逗號分隔。
[{“MyName” : “Jim”},{“MyName” : “Jerry”}]
[{“MyName” : “Jim”, MyAge” : 22} , {“MyName” : “Jerry”, MyAge” : 23}]
如果數組中沒有一個JSON對象,那這個JSON數組就是空數組
[] //空數組
JSON的嵌套
JSON的嵌套就比較復雜
何為嵌套呢,那就是JSON對象的值不是一個簡單的值類型而是一個完整的JSON對象甚至JSON數組
JSON 中嵌套JSON對象
{"MyInfo":{"Name": "Erich.Xiao","Height": "180cm"}}
格式化后展開
{ "MyInfo": { "Name": "Erich.Xiao", "Height": "180cm" } }
這樣就能在一個節點中顯示多個消息。
同樣在一個節點中可以顯示一個集合,也就是JSON中嵌套數組
{"MyAddress":[{"Pronvice":"江西","City":"萍鄉"},{"Pronvice":"江蘇","City":"昆山"}]}
格式化后展開
{ "MyAddress": [ { "Pronvice": "江西", "City": "萍鄉" }, { "Pronvice": "江蘇", "City": "昆山" } ] }
JSON的校驗和解析
JSON 雖然易於理解,可讀性強,但是書寫的時候也容易出錯,為了檢查是否出錯,我們需要校驗JSON的數據的正確性
校驗和解析JSON一般有兩種方式
(1) 在線JSON校驗格式化工具
(2)離線的工具 例如 JSON Viewer
JSON文件
JSON文件是以 .json為后綴名的文件 。
測試人員學好JSON的用處
軟件測試人員學好JSON有什么作用呢,既然知道web軟件開發過程中前端往往把HTTP請求中的數據通過JSON的格式發送給后端,那么學好JSON以后可以熟練的運用Jmeter,Postman等發包工具測試后台的接口,以及從接口返回出來的JSON數據進行bug的分析。
