自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

使用簡單的JSON 方法調(diào)用進(jìn)行說明調(diào)查

開發(fā)
將 JSON 數(shù)據(jù)發(fā)給服務(wù)器的最簡單方法是將其轉(zhuǎn)換成文本,然后以名稱/值對的值的方式進(jìn)行發(fā)送。請務(wù)必注意,JSON 格式的數(shù)據(jù)是相當(dāng)長的一個對象。

下面介紹JSON 方法調(diào)用的使用方法,對與JSON 方法調(diào)用,相比不能生成文本的JSON 方法調(diào)用,能生成文本的 API 自然更可取;而且,JSON 讓您能夠處理本地 JavaScript 對象,而無需為如何表示這些對象多費(fèi)心思。

 developerWorks Ajax 資源中心
請?jiān)L問 Ajax 資源中心,這是有關(guān) Ajax 編程模型信息的一站式中心,包括很多文檔、教程、論壇、blog、wiki 和新聞。任何關(guān)于 Ajax 的新信息都能在這里找到。 #t#
 
XML 也可以提供文本方面的類似益處,但用于將 JavaScript 對象轉(zhuǎn)換成 XML 的幾個現(xiàn)有 API 沒有 JSON API 成熟;有時,您必須在創(chuàng)建和處理 JavaScript 對象時格外謹(jǐn)慎以確保所進(jìn)行的處理能與所選用的 XML 會話 API 協(xié)作。但對于JSON 方法調(diào)用,情況就大不相同:它能處理幾乎所有可能的對象類型,并會返回給您一個非常好的 JSON 數(shù)據(jù)表示。

因此,JSON 的***價值在于可以將 JavaScript 真的作為 JavaScript 而非數(shù)據(jù)格式語言進(jìn)行處理。您所學(xué)到的所有有關(guān)使用 JavaScript 對象的技巧都可以應(yīng)用到代碼中,而無需為如何將這些對象轉(zhuǎn)變成文本而多費(fèi)心思。這之后,可以進(jìn)行如下所示的簡單 JSON 方法調(diào)用

  1. String myObjectmyObjectInJSON = myObject.toJSONString(); 

將 JSON 發(fā)給服務(wù)器并不難,但卻至關(guān)重要,而且還有一些重要的選擇要做。但是,一旦決定使用JSON 方法調(diào)用,所要做的這些選擇就會十分簡單而且數(shù)量有限,所以您需要考慮和關(guān)注的事情不多。重要的是能夠?qū)?JSON 字符串發(fā)送給服務(wù)器,而且***能做到盡快和盡可能簡單。

將 JSON 數(shù)據(jù)發(fā)給服務(wù)器的最簡單方法是將其轉(zhuǎn)換成文本,然后以名稱/值對的值的方式進(jìn)行發(fā)送。請務(wù)必注意,JSON 格式的數(shù)據(jù)是相當(dāng)長的一個對象,看起來可能會如清單 1 所示:

  1. var people =  { "programmers": [    { "firstName": "Brett", "lastName":"McLaughlin",  
  2. "email": "brett@newInstance.com" },    { "firstName": "Jason", "lastName":"Hunter",  
  3. "email": "jason@servlets.com" },    { "firstName": "Elliotte", "lastName":"Harold",  
  4. "email": "elharo@macfaq.com" }   ],  "authors": [    { "firstName": "Isaac",   
  5. "lastName": "Asimov", "genre": "science fiction" },    { "firstName": "Tad",   
  6. "lastName": "Williams", "genre": "fantasy" },    { "firstName": "Frank",   
  7. "lastName": "Peretti", "genre": "christian fiction" }   ],  "musicians": [      
  8. { "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },     
  9. { "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }   ]  } 

如果要以名稱/值對將其發(fā)送到服務(wù)器端,應(yīng)該如下所示:

  1. var url = "organizePeople.php?people=" + people.toJSONString();  
  2. xmlHttp.open("GET", url, true);  
  3. xmlHttp.onreadystatechange = updatePage;  
  4. xmlHttp.send(null); 

這看起來不錯,但卻存在一個問題:在 JSON 方法調(diào)用中會有空格和各種字符,Web 瀏覽器往往要嘗試對其繼續(xù)編譯。要確保這些字符不會在服務(wù)器上(或者在將數(shù)據(jù)發(fā)送給服務(wù)器的過程中)引起混亂,需要在 JavaScript escape() 函數(shù)中做如下添加:

  1. var url = "organizePeople.php?people=" + escape(people.toJSONString());  
  2. request.open("GET", url, true);  
  3. request.onreadystatechange = updatePage;  
  4. request.send(null); 
責(zé)任編輯:chenqingxiang 來源: 博客園
相關(guān)推薦

2010-01-06 17:06:05

Json格式

2010-01-08 14:41:24

JSON 緩存數(shù)據(jù)

2010-01-06 15:30:51

JSON和XML

2010-01-06 10:10:04

JSON建構(gòu)

2010-01-07 15:26:29

JSON結(jié)構(gòu)

2010-01-05 16:33:35

使用JSON

2009-11-30 11:25:24

VS2003 UNIC

2010-01-07 17:24:31

JSON 解析器

2022-12-29 07:33:44

Strace故障排除

2010-01-05 17:06:46

JSON 數(shù)據(jù)

2010-01-05 13:29:50

JSON對象

2010-01-07 17:58:49

JSON數(shù)值

2010-01-07 13:11:09

設(shè)置JSON

2010-01-07 17:17:19

處理JSON

2013-06-13 10:29:39

CasperJS測試UI測試

2010-01-08 10:41:56

JSON 數(shù)據(jù)

2009-04-03 13:20:05

C#擴(kuò)展方法調(diào)用

2010-01-07 18:19:01

JSON異步

2010-01-07 17:33:17

JSON 對象

2010-01-08 10:24:38

轉(zhuǎn)換JSON
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號