基於ASP.NET 3.5 Web Service 的JSON擴展應用

  如果你經常使用ASP.NET Web服務,那麼你便知道他們可以以不同的方法進行通信。可以使用SOAP 1.1/1.2,HTTP POST和HTTP GET的一些支持的協議調用ASP.NET Web服務。我們可以通過HTTP POST或GET非常容易的調用Web服務,並且也有能力進行信息傳遞和接收簡稱JSON編碼的對象,而不是使用普通的字符串和XML傳遞。

 
      JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,它採用完全獨立於語言的文本格式,可替換XML成爲AJAX程序中的數交換格式。它類似於XML和SOAP,同樣具有跨平臺的特性,是基於JavaScript 的一個子集,並易於人閱讀和編寫,同時也易於機器解析和生成。而且也使用了類似於C語言家族的習慣(包括C, C++, C#, Java, JavaScript, Perl, Python等),這些特性使JSON成爲理想的數據交換語言。微軟選擇JSON在服務器和Ajax客戶端可以實現數據交換。在客戶端和服務器端均實現了(數據的)串行化器和並行化器以使數據按JSON的格式交換。這提供了一種使瀏覽器向服務器發出Web Service請求的方法。同時,它也提供一個異步通信層,連接瀏覽器與網絡終端。Ajax從Beta版開始全面用JSON格式描述服務器和客戶端之間傳輸的數據,Microsoft.Web.Script.Services命名空間提供這方面的支持。
 
  儘管有許多宣傳關於XML如何擁有跨平臺,跨語言的優勢,然而,除非應用於 Web Services,否則,在普通的Web應用中,開發者經常爲XML的解析傷透了腦筋,無論是服務器端生成或處理 XML,還是客戶端用 JavaScript解析XML,都常常導致複雜的代碼,極低的開發效率。實際上,對於大多數Web應用來說,他們根本不需要複雜的 XML 來傳輸數據,XML的擴展性很少具有優勢,許多 AJAX 應用甚至直接返回HTML片段來構建動態 Web 頁面。和返回 XML 並解析它相比,返回 HTML 片段大大降低了系統的複雜性,但同時缺少了一定的靈活性。
 
    現在,JSON 爲Web應用開發者提供了另一種數據交換格式。讓我們來看看JSON到底是什麼?同 XML 或 HTML 片段相比,JSON 提供了更好的簡單性和靈活性。JSON 數據格式解析和XML一樣,JSON 也是基於純文本的數據格式。由於JSON天生是爲 JavaScript 準備的,因此,JSON的數據格式非常簡單,您可以用 JSON 傳輸一個簡單的String,Number,Boolean,也可以傳輸一個數組,或者一個複雜的 Object對象。
 
它有兩種結構:
    1、 “名稱/值”對的集合(A collection of name/value pairs)。不同的語言中,它被理解爲對象(object),紀錄(record),結構(struct),字典(dictionary),哈希表(hash table),有鍵列表(keyed list),或者關聯數組 (associative array)。
    2、 值的有序列表(An ordered list of values)。在大部分語言中,它被理解爲數組(array)。先看看用下面Xml表示:
<>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章