偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

闡述Json格式調(diào)用說明方法簡介

開發(fā)
Json格式漢字編碼估計不大對應(yīng)(不是說它不是utf-8)我的頁面編碼(utf-8),因此會有問題出現(xiàn)。因此對于某些驗證返回的報錯信息(漢字)會有影響。

解決Json格式問題的方法很簡單,直接針對自己的問題需要,可以直接將此數(shù)組進行拼串,但前提是要深入理解到底什么是FrontPage服務(wù)器,及他是怎么運作的, 在這里拿出來和大家分享一下。

完善的 encode方法: 解決此問題的簡單方法就是 利用別人以完成的開源代碼: 首先想到 zend framework。  拿來  zf_json 包中的 Decoder.php, 和 Encoder.php。 Decoder.php其實只要將其中某個protect方法的 protect去掉就行。 具體操作忘了,讀者自行調(diào)試來解決。改寫好Decoder 類后,調(diào)用如下:

  1. $filepath  =  $_SERVER['DOCUMENT_ROOT'];  
  2.  include $filepath.'/inc/json/Encoder.php';   
  3.  $encoder  = new Zend_Json_Encoder(false);  
  4.  $json  = $encoder ->encode($result);   
  5.  header("X-JSON: $json"); 

由于很多使用json的地方還是在ajax調(diào)用中, 所以一些ajax '框架' 提供了decode方法:比如在prototype中, 如果php頁面包含了prototype.js, 那么就可以直接來調(diào)用 function(transport, json) { 。。操作} 在其中取json數(shù)據(jù) 就是  json.a  ,Json格式 等了。

另外:可能遇到問題,編碼。  zend framework返回的漢字編碼估計不大對應(yīng)(不是說它不是utf-8)我的頁面編碼(utf-8),因此會有問題出現(xiàn)。因此對于某些驗證返回的報錯信息(漢字)會有影響。#t#

在這里的替代方法就是使用傳統(tǒng)的接口返回數(shù)字代碼形式(通信網(wǎng)關(guān)經(jīng)常采用的方法),比如返回 json.code 有 0,1,2,3等多種可能。則在js端處理時, 0表示成功,1表示非法的客戶端數(shù)據(jù),等等。 問題得到完美解決。

上面中,直接將這個字符串賦給一個變量,Json格式就變成一個Javascript數(shù)組了(專業(yè)化術(shù)語應(yīng)該不叫數(shù)組,不過由于PHP的習(xí)慣問題,我就一直叫數(shù)組好了,方便理解)。這樣,可以很方便的對arr進行遍歷或者任意做你想做的事情了。

寫到這里,好像都沒提到AJAX哦?是哦,聯(lián)想一下,如果服務(wù)端返回的responseText用JSON過的字符串代替XML的話,前臺Javascript處理起來是不是很方便呢?狗皮膏藥就是這樣用的。

其實寫到這里,除了數(shù)據(jù)的存儲格式不太一樣外,JSON和XML也沒什么太大區(qū)別哦,不過下面我說的一點。雖然和XML沒多大關(guān)系,不過,可以說明JSON更大范圍的應(yīng)用,那就是,跨域的數(shù)據(jù)調(diào)用。

由于安全性問題,Json格式不支持跨域調(diào)用,這樣要調(diào)用不同域名下的數(shù)據(jù),很麻煩哦,雖然有解決方案(stone在他的講座上提到過了代理啊什么的雖然聽不懂但是知道能解決)。我寫兩個文件,足以展示跨域調(diào)用了。

責(zé)任編輯:chenqingxiang 來源: 賽迪
相關(guān)推薦

2010-01-07 17:48:02

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

2010-01-05 17:35:09

JSON數(shù)組格式

2010-02-04 13:52:30

Android ap

2010-01-08 15:30:15

JSON格式舉例

2010-01-06 10:27:32

JSON數(shù)組

2010-01-07 15:36:22

JSON轉(zhuǎn)化

2010-01-08 09:03:38

返回JSON數(shù)據(jù)

2010-01-07 17:09:59

JSON 方法調(diào)用

2010-02-03 17:37:30

Python語法

2010-01-06 13:23:20

JSON數(shù)據(jù)格式

2009-12-14 16:44:56

Ruby調(diào)用DLL

2009-12-17 15:22:27

Visual Stud

2010-01-13 09:38:17

C++單元測試

2009-12-23 17:57:22

WPF默認(rèn)模板

2010-02-23 15:44:24

Python編輯器

2009-12-10 17:11:14

.NET Framew

2010-01-07 16:29:33

使用Json

2010-01-06 14:04:55

Json數(shù)據(jù)格式

2010-01-07 17:02:27

JSON序列化

2010-01-05 16:48:16

JSON 字符串
點贊
收藏

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