日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Ajax和WEB服務(wù)數(shù)據(jù)格式:自定義返回格式

這是這一系列的最后一篇文章了,前面我們講到了XML,SOAP,HTM格式和第二部分的JSON和JSONP?,F(xiàn)在我們來看看自定義數(shù)據(jù)格式。

我們提供的服務(wù)有:成都網(wǎng)站設(shè)計、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、雞東ssl等。為上千企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的雞東網(wǎng)站制作公司

最佳的數(shù)據(jù)傳輸格式應(yīng)該是使用最少的傳輸量表達(dá)最需要的數(shù)據(jù)。想想之前在XML和JSON中定義的書的數(shù)據(jù)。我們每一本書包含6條數(shù)據(jù),所以我們可以簡單的按照下面的格式來寫:

 
 
 
  1. The Principles of Beautiful Web Design, 2nd Edition;
  2. http: Beaird;SitePoint;39.95;USD //www.sitepoint.com/books/design2/;Jason 
  3. jQuery: Novice to Ninja;
  4. http: Castledine & Craig Sharkie;SitePoint;29.95;USD //www.sitepoint.com/books/jquery1/;JEarle 
  5. Build Your Own Database Driven Website;
  6. http: Yank;SitePoint;39.95;USD//www.sitepoint.com/books/phpmysql4/;Kevin 

我們的數(shù)據(jù)現(xiàn)在看起來跟分號分隔的列表差不多了。我們使用回車來區(qū)分每一本書,通過分號來區(qū)分書中的每一項內(nèi)容,這個分隔符必須謹(jǐn)慎的選擇,不選擇逗號因為可能書名中出現(xiàn)逗號。

跟JSON不同,對于自定義的數(shù)據(jù)格式,我們必須得自己來解析返回的字符串,不過這個通過JavaScript自帶的split()方法可以輕松完成。下面的代碼就是將我們自定義的數(shù)據(jù)格式轉(zhuǎn)換成為JSON的:

 
 
 
  1. // convert custom data to an array of JavaScript objects  
  2. function ParseBookData(ajaxdata) {  
  3.     var book = [], bookData = ajaxdata.split("\n"), bookItem;  
  4.     for (var b=0, bl=bookData.length; b < bl; b++) {  
  5.         bookItem = bookData[b].split(";");  
  6.         book[b] = {  
  7.             title: bookItem[0],  
  8.             url: bookItem[1],  
  9.             author: bookItem[2],  
  10.              publisher: bookItem[3],  
  11.              price: {  
  12.                  amount: parseFloat(bookItem[4]),  
  13.                  currency: bookItem[5]  
  14.              }  
  15.          };  
  16.      }  
  17.      return book;  
  18. }  
  19. var book = ParseBookData(xhr.responseText);  
  20. alert(book[0].title); // first book title  
  21. alert(book[1].url); // second book URL 

JavaScript可以很快的處理這些數(shù)據(jù)–即使是一千本書的數(shù)據(jù)。大多數(shù)情況下,你會發(fā)現(xiàn)下載和處理數(shù)據(jù)的時間遠(yuǎn)小于同樣的基于JSON的異步請求的時間。

自定義的數(shù)據(jù)格式有下面這些好處:

◆ 很輕量級的數(shù)據(jù),傳輸比較快

◆ 在服務(wù)器端,不需要額外的東西就能很快很方便生成

◆ 用這種格式構(gòu)造惡意代碼就很困難了

當(dāng)然也有他的不好處:

◆ 對于那種格式不一定的數(shù)據(jù)就不太方便了。比如,我們的書籍信息由可選的PDF的下載鏈接和下載價格,這樣的話,處理的程序邏輯就比較復(fù)雜了

◆ 你的服務(wù)可能比使用JSON和XML更加受到限制,如果你是自己在使用這個服務(wù),那么問題不大,如果考慮到第三方使用的話,就不方便了

◆ 需要為每一種的數(shù)據(jù)格式寫處理的函數(shù)

◆ 這樣的數(shù)據(jù)可讀性就比較差了

◆ 還要確定分隔符不會出現(xiàn)在數(shù)據(jù)中間。需要在讀取的時候就做一些處理

看看前面的文章:

Ajax和WEB服務(wù)數(shù)據(jù)格式:XML SOAP HTML

Ajax和WEB服務(wù)數(shù)據(jù)格式:JSON JSONP

原文來自:http://rockux.com/

【編輯推薦】

  1. 使用 jQuery 簡化 Ajax 開發(fā)
  2. 用Dojo實現(xiàn)Ajax請求:XHR、跨域、及其他
  3. 盤點ASP.NET Ajax工具箱的10大頂級控件
  4. 簡化開發(fā)流程 了解各種Ajax框架的適用性
  5. Ajax安全隱患將成站點定時炸彈

當(dāng)前題目:Ajax和WEB服務(wù)數(shù)據(jù)格式:自定義返回格式
分享鏈接:http://m.5511xx.com/article/cojcedh.html