国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

jsonp及json數據的應用

2024-04-27 15:03:29
字體:
來源:轉載
供稿:網友

提及jsonp就不可避免提到一個問題,那就是跨域。

跨域是指不符合同源策略;

同源策略:

(1)協議相同;

(2)端口號相同;

(3)域名相同;

解決跨域一般有兩種方法;

(1)在后臺代碼設置

header("access-Control-Allow-Origin:*");

這樣是通知瀏覽器不要阻止跨域請求,但是很不安全;

(2)使用jsonp請求

jsonp的原理;

動態添加一個<script>標簽,而script標簽的src屬性是沒有跨域的限制的。這樣說來,這種跨域方式其實與Ajax xmlHttPRequest協議無關了。

Jsonp的執行過程如下:

  ①首先在客戶端自定義一個函數 (如:functiongetName(data){console.log(data)})

     ②然后動態創建一個script標簽,src指向其他域名下的api,當script標簽創建完成,就會根據api接口去請求數據,返回的數據格式類似getName({'name':'xiaoming'})。

     ③返回的數據格式,其實是一個方法調用,所以就會調用在第一步自定義的函數,同時傳入參數。

     ④每次jsonp請求,都需要動態創建一個script標簽,防止標簽變多,需要在script標簽onload完成后,刪除我們剛剛創建的script標簽。

ps:1.jsonp與ajax沒有任何關系

  2.jsonp需要后臺與前端進行配合才能完成。

json數據的應用;

JSON 是一種輕量級的數據交換格式。

JSON 獨立于語言和平臺,JSON 解析器和JSON 庫支持許多不同的編程語言。

JS 字面量對象 轉成 json 字符串

    var arr = [1,2,3, { a : 1 } ];    JSON.stringify( arr );       字符串解析成 JSON  var str = '[1,2,3,{"a":1}]';  JSON.parse( str ); php面量對象 轉成 json 字符串$arr array('name' => 'hehe');echo json_encode($arr);


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 屯昌县| 博野县| 巩留县| 昌黎县| 武乡县| 嘉祥县| 赤水市| 高要市| 左权县| 凉城县| 奉节县| 和政县| 南漳县| 中西区| 铁岭县| 黄山市| 克什克腾旗| 奉贤区| 五大连池市| 琼结县| 申扎县| 松滋市| 大连市| 富平县| 扎兰屯市| 石阡县| 神木县| 隆尧县| 封丘县| 福贡县| 延安市| 犍为县| 永靖县| 拉萨市| 崇左市| 炎陵县| 梁山县| 东兴市| 罗定市| 桂林市| 临泽县|