亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JSON 必知必會(huì) 觀后記

 更新時(shí)間:2016年10月27日 21:31:19   作者:天幽  
這篇文章主要介紹了個(gè)人看了JSON 必知必會(huì)一書(shū)的讀后感,此書(shū)從各個(gè)方面介紹了json的一些注意事項(xiàng)與優(yōu)缺點(diǎn)。

推薦大家購(gòu)買(mǎi)紙質(zhì)書(shū)籍,當(dāng)然如果條件有限可以臨時(shí)下載電子版的:http://chabaoo.cn/books/504703.html

術(shù)語(yǔ)
可移植性
平臺(tái)和系統(tǒng)間傳輸信息的兼容性。
 
JSON
JavaScriptObjectNotation  對(duì)象表示法。
 
數(shù)據(jù)交換格式
用于不同平臺(tái)或系統(tǒng)間交換數(shù)據(jù)的文本。
 
字面量
字面意思與其想表達(dá)的意思完全一致的值。
 
變量
通過(guò)形如X的標(biāo)識(shí)符來(lái)表示的,可以修改的一類(lèi)值。
 
最大移植性
通過(guò)保證數(shù)據(jù)本身對(duì)于平臺(tái)和系統(tǒng)的兼容性來(lái)提供超越數(shù)據(jù)格式本身的可移植性。
 
名稱-值對(duì)
指擁有名稱和對(duì)應(yīng)值的屬性和特征(也叫鍵值對(duì))。
 
語(yǔ)法驗(yàn)證
json格式的驗(yàn)證。
 
一致性驗(yàn)證
關(guān)注獨(dú)特的數(shù)據(jù)結(jié)構(gòu)驗(yàn)證。
 
JSON中的字符串類(lèi)型
一個(gè)字符串值,如“你是個(gè)好人”,使用雙引號(hào)包裹。
 
概念

JSON是一種數(shù)據(jù)交換格式。
 
JSON獨(dú)立于編程語(yǔ)言。
 
JSON基于JavaScript對(duì)象的字面量表示法(重點(diǎn)在于表示法)。
 
JSON表達(dá)數(shù)據(jù)的方式對(duì)通用的編程概念都很友好。
 
JSON基于JavaScript對(duì)象字面量表示屬性的語(yǔ)法,但并不包含與JavaScript對(duì)象字面量的函數(shù)相關(guān)部分。
 
JSON的名稱-值對(duì)中,名稱始終被雙引號(hào)包裹。
 
JSON的名稱-值對(duì)中,值可以是字符串,數(shù)字,布爾值,null,對(duì)象式數(shù)組。
 
JSON中的名稱-值對(duì)列表始終被花括號(hào)包裹。
 
JSON中多個(gè)名稱值對(duì)使用逗號(hào)分隔。
 
JSON文件使用.json擴(kuò)展名。
 
JSON的媒體類(lèi)型是application/json。
 
JSON中的布爾類(lèi)型的值只有true和false,所有字母必須小寫(xiě)。
 
JSON中的null值的所有字母必須小寫(xiě),表示空值。
 
JSON中的數(shù)字類(lèi)型,一個(gè)數(shù)字值,如66,可以是正整數(shù),負(fù)整數(shù),小數(shù),指數(shù)。
 
對(duì)象和數(shù)組很關(guān)鍵的區(qū)別就是,對(duì)象是名稱-值對(duì)構(gòu)成的列表或集合,數(shù)組是值構(gòu)成的列表和集合。
 
對(duì)象和數(shù)組另一個(gè)關(guān)鍵區(qū)別是,數(shù)組中所有值應(yīng)具有相同的數(shù)據(jù)類(lèi)型。
 
術(shù)語(yǔ)
JSON中的數(shù)組
數(shù)組是值的集合或列表,每個(gè)值都可以是字符串,數(shù)字,布爾值,對(duì)象或數(shù)組中的任何一種。數(shù)組必須被[]包裹,且值與值之間用逗號(hào)分隔。
 
JSON中的對(duì)象類(lèi)型
對(duì)象類(lèi)型是使用逗號(hào)分隔的名稱-值對(duì)構(gòu)成的集合,并使用{}包裹。
 
JSON Schema
數(shù)據(jù)交換中的一種虛擬合同。
 
服務(wù)端(web開(kāi)發(fā)中的)

當(dāng)網(wǎng)頁(yè)式資源被請(qǐng)求時(shí),在服務(wù)器上執(zhí)行的一系列操作。服務(wù)器為互聯(lián)網(wǎng)瀏覽器提供其處理和加載的響應(yīng)。
 
客戶端(web開(kāi)發(fā)中的)
當(dāng)瀏覽器請(qǐng)求的界面加載完畢時(shí)執(zhí)行的一系列操作,通常是指HTML,CSS和JavaScript。
 
概念
JSON驗(yàn)證器負(fù)責(zé)驗(yàn)證語(yǔ)法錯(cuò)誤,JSON Schema負(fù)責(zé)提供一致性驗(yàn)證。
 
JSONSchema是負(fù)責(zé)數(shù)據(jù)接收第一道防線,也是數(shù)據(jù)發(fā)送方節(jié)約時(shí)間,保證數(shù)據(jù)正確的好工具。
 
JSONSchema可以解決下列一致性驗(yàn)證的問(wèn)題
  1.值的數(shù)據(jù)類(lèi)型是否正確?  可以具體規(guī)定一個(gè)值是數(shù)字、字符串等類(lèi)型。
  2.是否包含所需要的數(shù)據(jù)?  可以具體規(guī)定哪些數(shù)據(jù)是需要的,哪些不需要的。
  3.值的形式是不是我需要的?  可以指定范圍,最小值最大值。
 
JSON本身不構(gòu)成什么威脅,它只是文本。
 
在定位JSON安全問(wèn)題時(shí),應(yīng)該記住以下3件事.

  1.不要使用頂級(jí)數(shù)組,頂級(jí)數(shù)組是合法的JavaScript腳本,他們可以用<script>標(biāo)簽鏈接并使用。
  2.對(duì)于不想公開(kāi)的資源,僅允許使用HTTPPost方法請(qǐng)求,而不是Get方法,get方法可以通過(guò)url請(qǐng)求,甚至放在script標(biāo)簽中。
  3.使用JSON.parser()來(lái)替代eval(),eval()函數(shù)會(huì)將傳入的字符串編譯并執(zhí)行,這會(huì)讓你的代碼易被攻擊,應(yīng)僅使用JSON.parser()來(lái)解析json數(shù)據(jù)。
 
安全漏洞通常由于開(kāi)發(fā)人員沒(méi)有考慮“黑客如何利用這一點(diǎn)”這一問(wèn)題所導(dǎo)致的。
 
JavaScript的XMLHTTPRequest與WEBAPI之間的關(guān)系是客戶端與服務(wù)端之間的關(guān)系。
 
XMLHTTPRequest并不僅限于XML,還可以用它來(lái)請(qǐng)求JSON資源
 
術(shù)語(yǔ)
跨站請(qǐng)求偽造(CSRF)
指利用站點(diǎn)對(duì)用戶瀏覽器的信任進(jìn)行攻擊
 
頂層JSON數(shù)組
存在于JSON名稱-值對(duì)之外的位于文檔最頂層的JSON數(shù)組。
 
注入攻擊
依賴于將數(shù)據(jù)注入到web應(yīng)用程序以方便惡意數(shù)據(jù)執(zhí)行或編譯的攻擊。
 
JSON跨站腳本攻擊
通過(guò)截取或?qū)⒄军c(diǎn)中所使用的第三方代碼更換為惡意腳本,來(lái)對(duì)站點(diǎn)進(jìn)行的一種注入攻擊。
 
webApi
通過(guò)Http與服務(wù)進(jìn)行交互的一系列指令與標(biāo)準(zhǔn)。
 
XMLHTTPRequest
一種JavaScript對(duì)象,無(wú)需刷新頁(yè)面即可從一個(gè)URL獲取數(shù)據(jù),常用與AJAX編程。
 
超文本傳輸協(xié)議(HTTP)
萬(wàn)維網(wǎng)使用的交換數(shù)據(jù)的基本協(xié)議
 
序列化
將對(duì)象轉(zhuǎn)化為文本的操作
 
反序列化
將文本轉(zhuǎn)化為對(duì)象的操作。
 
概念
網(wǎng)站為人服務(wù),webAPI為代碼服務(wù),他們都使用Http協(xié)議。
 
同源策略使得JavaScript和JSON資源進(jìn)行客戶端-服務(wù)端交流時(shí)出現(xiàn)了一些困難。
 
客戶端跨域的XMLHTTPRequest需要服務(wù)端的支持來(lái)保證JSON資源請(qǐng)求成功。
 
jQuery是一款提供了JSON請(qǐng)求和解析功能的能夠縮短開(kāi)發(fā)時(shí)間的抽象化工具,同時(shí)它還解決了跨瀏覽器兼容問(wèn)題。
 
AngularJS MVC的概念
  JSON是模型||數(shù)據(jù)模型
  HTML是視圖,且提供了與模型進(jìn)行綁定的語(yǔ)法
  控制器是AngularJS語(yǔ)法來(lái)定義和操作與模型和視圖間的交互的JavaScript文件。
 
AngularJS使得JavaScript對(duì)象和JSON在MVC架構(gòu)中大放異彩。
 
在關(guān)系型數(shù)據(jù)庫(kù)中,常常會(huì)存在表列行以及他們之間的關(guān)系,其中會(huì)用到主鍵和外鍵。
 
NoSQL數(shù)據(jù)庫(kù)有許多種,它們有與傳統(tǒng)的關(guān)系型模型不同的數(shù)據(jù)存儲(chǔ)與利用方法。
 
CouchDB數(shù)據(jù)庫(kù)重要概念
  1.它是一種面向文檔的NoSQL數(shù)據(jù)庫(kù)
  2.它存儲(chǔ)和管理JSON文檔
  3.它會(huì)在存儲(chǔ)和獲取數(shù)據(jù)的同時(shí)維護(hù)好數(shù)據(jù)結(jié)構(gòu)
  4.它會(huì)使用基于HTTP的API來(lái)獲取作為JSON文檔資源的數(shù)據(jù)
  5.它使用JavaScript作為查詢語(yǔ)言,且通過(guò)視圖的map和reduce方法來(lái)跨API獲取數(shù)據(jù)。
 
在服務(wù)端,可以將JSON反序列化為對(duì)象而運(yùn)用在編程邏輯中,也可以將對(duì)象序列化成JSON格式。
 
JSON同時(shí)被服務(wù)端和客戶端較好的支持,使得它在web領(lǐng)域從諸多交換數(shù)據(jù)格式中脫穎而出。
 
術(shù)語(yǔ)
同源策略
出于安全考慮,瀏覽器僅會(huì)請(qǐng)求同一域的腳本。
 
跨域資源共享CORS
通過(guò)設(shè)置響應(yīng)頭,使得跨于請(qǐng)求可以成功。
 
JSON-p
使用script標(biāo)簽,繞過(guò)同源策略限制,從不同域名的服務(wù)器請(qǐng)求JSON。
 
抽象化
一種處理復(fù)雜系統(tǒng)的技術(shù),主要思想是將一個(gè)大問(wèn)題轉(zhuǎn)換為多個(gè)小問(wèn)題
 
框架
一種能夠節(jié)約時(shí)間,已讓我們更專注于構(gòu)建功能的抽象化工具。
 
Jquery.parserJSON()
一個(gè)jquery的函數(shù),它不僅調(diào)用JSON.parser()函數(shù),還會(huì)兼容那些不支持JSON.parser()函數(shù)的老式瀏覽器,且通過(guò)驗(yàn)證字符來(lái)評(píng)估字符串,從而避免了可能的安全問(wèn)題。
 
jquery.getJSON()
jquery.ajax()函數(shù)的簡(jiǎn)寫(xiě)形式,其中包含了將json解析為JavaScript對(duì)象的功能。
 
單頁(yè)web應(yīng)用
與傳統(tǒng)的多頁(yè)方式不同,著力于提供更加無(wú)縫的應(yīng)用體驗(yàn)的網(wǎng)頁(yè)。
 
模型-視圖-控制器(MVC)
一種應(yīng)用架構(gòu)模式,它將應(yīng)用分為3部分:模型(數(shù)據(jù))、視圖(展示)、以及控制器(更新模型和視圖)
 
AngularJS
一款使用JavaScript對(duì)象作為數(shù)據(jù)模型的JavaScriptMVC框架。
 
關(guān)系型數(shù)據(jù)庫(kù)
一種將存儲(chǔ)的數(shù)據(jù)用可以辨識(shí)的關(guān)系進(jìn)行結(jié)構(gòu)化存儲(chǔ)的數(shù)據(jù)庫(kù)。
 
NoSQL數(shù)據(jù)庫(kù)
一種不通過(guò)存儲(chǔ)數(shù)據(jù)間關(guān)系來(lái)存儲(chǔ)的數(shù)據(jù)庫(kù)。
 
CouchDB
一種面向文檔的NoSQL數(shù)據(jù)庫(kù)存儲(chǔ)類(lèi)型,使用JSON文檔的形式來(lái)存儲(chǔ)數(shù)據(jù)。
 
ASP.NET
微軟開(kāi)發(fā)的服務(wù)端Web框架
 
PHP
用于創(chuàng)建動(dòng)態(tài)web頁(yè)面的服務(wù)端腳本語(yǔ)言
 
Ruby on Rails
使用Ruby編寫(xiě)的服務(wù)端Web應(yīng)用框架
 
Node.js
基于谷歌V8引擎的服務(wù)端JavaScript。
 
java
一種面向?qū)ο缶幊陶Z(yǔ)言。
 
JSON還會(huì)作為靜止的配置文件
 
在考慮用什么數(shù)據(jù)格式時(shí),數(shù)據(jù)的形式和交換數(shù)據(jù)的系統(tǒng)都應(yīng)該被考慮到。!?。SON不總是最佳選擇。

相關(guān)文章

  • js實(shí)現(xiàn)刪除json中指定的元素

    js實(shí)現(xiàn)刪除json中指定的元素

    這篇文章主要介紹了js實(shí)現(xiàn)刪除json中指定的元素,需要的朋友可以參考下
    2020-09-09
  • JavaScript中的JSON 中文版翻譯

    JavaScript中的JSON 中文版翻譯

    JSON是JavaScript面向?qū)ο笳Z(yǔ)法的一個(gè)子集。由于JSON是JavaScript的一個(gè)子集,因此它可清晰的運(yùn)用于此語(yǔ)言中。
    2009-10-10
  • json 入門(mén)基礎(chǔ)教程 推薦

    json 入門(mén)基礎(chǔ)教程 推薦

    在異步應(yīng)用程序中發(fā)送和接收信息時(shí),可以選擇以純文本和 XML 作為數(shù)據(jù)格式。掌握 Ajax 的這一期討論另一種有用的數(shù)據(jù)格式 JavaScript Object Notation(JSON),以及如何使用它更輕松地在應(yīng)用程序中移動(dòng)數(shù)據(jù)和對(duì)象。
    2009-10-10
  • JSON掃盲帖 JSON.as類(lèi)教程

    JSON掃盲帖 JSON.as類(lèi)教程

    如果json字符串是從html用FlashVars來(lái)傳遞參數(shù)時(shí)那么字符串中的第一個(gè)雙引號(hào)(包括雙引號(hào))以后的內(nèi)容就不會(huì)得到傳送.
    2009-02-02
  • JS操作JSON常用方法(10w閱讀)

    JS操作JSON常用方法(10w閱讀)

    工作中做了幾款自動(dòng)化測(cè)試工具都是跟日志讀取相關(guān),日志格式又大多數(shù)都是JSON,所以這里把常用的JS操作JSON的方法做了總結(jié),需要的朋友可以參考下
    2020-12-12
  • 比較詳細(xì)的關(guān)于javascript 解析json的代碼

    比較詳細(xì)的關(guān)于javascript 解析json的代碼

    JSON (JavaScript Object Notation)一種簡(jiǎn)單的數(shù)據(jù)格式,比xml更輕巧。 JSON 是 JavaScript 原生格式,這意味著在 JavaScript 中處理 JSON 數(shù)據(jù)不需要任何特殊的 API 或工具包。
    2009-12-12
  • web頁(yè)面數(shù)據(jù)展示新想法(json)

    web頁(yè)面數(shù)據(jù)展示新想法(json)

    若使用json作為客戶端和服務(wù)器之間的數(shù)據(jù)交換格式,代替原來(lái)的html交換格式。
    2010-06-06
  • IE8 原生JSON支持

    IE8 原生JSON支持

    你可能已經(jīng)從這篇文章的標(biāo)題中猜到了,Internet Explorer 8(目前是Beta2)提供了原生JSON的解析和序列化。
    2009-04-04
  • 解決json日期格式問(wèn)題的3種方法

    解決json日期格式問(wèn)題的3種方法

    這篇文章主要介紹了解決json日期格式問(wèn)題的3種方法 ,需要的朋友可以參考下
    2014-02-02
  • 利用json獲取字符出現(xiàn)次數(shù)的代碼

    利用json獲取字符出現(xiàn)次數(shù)的代碼

    之前看到一篇博客,列出一個(gè)字符串中每個(gè)字符出現(xiàn)的次數(shù),后來(lái)想想可以不可以用json來(lái)實(shí)現(xiàn)呢,結(jié)果當(dāng)然是可以的,廢話就不多說(shuō)了
    2012-03-03

最新評(píng)論