成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

PHP下ajax跨域的解決方案之jsonp實例分析

瀏覽:268日期:2022-09-11 10:39:37

本文實例講述了PHP下ajax跨域的解決方案之jsonp。分享給大家供大家參考,具體如下:

首先要說明一下json和jsonp的區別?

json是一種基于文本的數據交換方式,或者叫做描述數據的一種格式。

var person = { 'name': 'test', 'age': '25', 'sex': '男'};var data = [1, 2, 3, 4, 5];

而jsonp是一種非官方跨域數據交互協議,該協議允許用戶傳遞一個callback參數給服務端,然后服務端返回數據時會將這個callback參數作為函數名來包裹住json數據,這樣客戶端就可以隨意定制自己的函數來自動處理返回數據了。

比如我在a.com的網站上引用了b.com的一個b.js,但這樣跨域的引用并不會產生錯誤,說明調用js文件時不受跨域的影響。

<script type='text/javascript' src='http://www.b.com/b.js'></script>

那么我們在b.js里添加如下代碼,看看是否能夠執行

alert('I from b');

確定是可以執行。

那么如果我們在a.com上自已創建一個js函數,而在b.com下的b.js中調用,那是否可行呢?

a.com下的index.html如下:

<!DOCTYPE html><html><head> <meta charset='UTF-8'> <title></title></head><body> <script type='text/javascript'> function a(data) { alert('I from a rn' + 'data:' + data); } </script> <script type='text/javascript' src='http://www.b.com/b.js'></script></body></html>

b.com下的b.js如下:

a('from b');

上面也是可以執行的,我們可以看到在b.js中的數據確實正確的傳到了函數a中。

問題又來了,a.com中創建的函數名與b.js中調用的函數名必須一致,那么如何才能讓b.com服務端知道這個函數名,只有通過地址欄來傳遞了,加上一個callback=函數名來傳遞。當然callback這個命名可以改,但大家都這么命名,也就約定俗成了。

a.com下的index.html如下:

<!DOCTYPE html><html><head> <meta charset='UTF-8'> <title></title></head><body> <script type='text/javascript'> function a(data) { alert('uid :' + data.uid + 'name :' + data.name); } </script> <!-- 注意這里把b.js改成b.php了 --> <script type='text/javascript' src='http://www.b.com/b.php?callback=a'></script></body></html>

b.com下的b.php如下:

<?php$callback = !empty($_GET[’callback’]) ? trim($_GET[’callback’]) : ’’;if(!empty($callback)) { $data = json_encode(array( ’uid’ => 1, ’name’ => ’測試’, )); echo '{$callback}({$data});';}

上面也是可以執行的,知道了回調函數名,b.com服務端處理好數據,然后通過字符串拼接輸出。

jquery中就已經提供了jsonp的支持,a.com下的index.html如下所示:

<!DOCTYPE html><html><head> <meta charset='UTF-8'> <title></title></head><body> <div class='info'></div> <script type='text/javascript' src='http://www.b.com/jquery.js'></script> <script type='text/javascript'> $.ajax({ dataType: 'jsonp', url: 'http://www.b.com/b.php', jsonp: 'callback', success: function(data) { $('.info').text('uid:' + data.uid + ' name:' + data.name); } }); </script></body></html>

跨域策略限制情況表如下: URL 說明 允許通信 http://www.a.com/a.js http://www.a.com/b.js 同一域名下 允許 http://www.a.com/lab/a.js http://www.a.com/script/b.js 同一域名下不同文件夾 允許 http://www.a.com:8000/a.js http://www.a.com/b.js 同一域名,不同端口 不允許 http://www.a.com/a.js https://www.a.com/b.js 同一域名,不同協議 不允許 http://www.a.com/a.js http://127.0.0.100/b.js 域名和域名對應ip 不允許 http://www.a.com/a.js http://script.a.com/b.js 主域相同,子域不同 不允許 http://www.a.com/a.js http://a.com/b.js 同一域名,不同二級域名(同上) 不允許 http://www.a.com/a.js http://www.b.com/b.js 不同域名 不允許

更多關于PHP相關內容可查看本站專題:《PHP+ajax技巧與應用小結》、《PHP網絡編程技巧總結》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

標簽: PHP
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美激情一区三区| 亚洲第一成人在线| 欧美连裤袜在线视频| 亚洲欧美另类久久久精品2019| 激情综合自拍| 精品在线播放免费| 国产精品美女久久久久久久久久久| 老司机午夜精品视频在线观看| 成人av综合在线| 五月婷婷久久综合| 久久亚区不卡日本| 欧美写真视频网站| 一区在线免费| 国产激情一区二区三区桃花岛亚洲| 亚洲欧美色一区| 91精品国产全国免费观看| 亚洲欧洲日本一区二区三区| 国产电影一区在线| 亚洲电影视频在线| 国产日韩v精品一区二区| 欧美视频三区在线播放| 精品电影一区| 夫妻av一区二区| 亚洲成人av在线电影| 久久久久国产免费免费| 色狠狠综合天天综合综合| 欧美日韩日本国产亚洲在线| 久久99国内精品| 国产精品国产三级国产三级人妇| 7777精品久久久大香线蕉 | 欧美丝袜丝交足nylons| 亚洲欧洲视频| av中文字幕亚洲| 久久成人精品无人区| 亚洲影视在线播放| 中文字幕精品综合| 欧美一区二区黄色| 亚洲欧美国产不卡| 午夜久久99| 国产精品影视网| 青青草成人在线观看| 亚洲一区二区三区四区在线| 欧美极品少妇xxxxⅹ高跟鞋| 欧美一级片免费看| 欧美天堂亚洲电影院在线播放| 中文久久精品| 成人一区二区三区| 激情欧美日韩一区二区| 亚洲国产乱码最新视频| 亚洲丝袜美腿综合| 国产丝袜美腿一区二区三区| 日韩欧美中文字幕公布| 欧美三级中文字| 久久成人一区| 日韩午夜黄色| 在线观看欧美一区| 欧美日韩精品不卡| 91猫先生在线| 99re热视频精品| 成人自拍视频在线| 国产一区二区福利视频| 老色鬼精品视频在线观看播放| 亚洲h精品动漫在线观看| 伊人性伊人情综合网| 国产精品久久久久久久久图文区 | 午夜精品久久久| 亚洲美女少妇撒尿| 日本一区二区三区电影| 久久综合久久综合久久综合| 日韩手机在线导航| 欧美日本一区二区| 欧美性猛交xxxxxx富婆| 久久久久久久久久久久久久一区| 99在线热播精品免费99热| 激情久久婷婷| 欧美三区美女| 欧美日韩调教| 欧美精品免费观看二区| 欧美成人久久| 成人福利电影精品一区二区在线观看| 国产精品影视在线| 国产精品综合在线视频| 精品一区二区三区香蕉蜜桃| 美女视频免费一区| 免费观看日韩电影| 青青草原综合久久大伊人精品 | 国产午夜精品一区二区三区欧美| 亚洲小说欧美另类婷婷| 国产精品国产精品| 国产精品草草| 激情综合网址| 亚洲人成久久| 亚洲福利免费| 亚洲麻豆视频| 国产日本精品| 亚洲一区视频| 久久亚洲一区| 91电影在线观看| 欧美久久久久免费| 日韩欧美成人激情| 久久久久99精品国产片| 国产精品入口麻豆九色| 亚洲码国产岛国毛片在线| 亚洲大片精品永久免费| 日韩激情在线观看| 国内精品写真在线观看| 成人国产精品免费| 欧美不卡三区| 亚洲区第一页| 老牛嫩草一区二区三区日本 | 亚洲超丰满肉感bbw| 蜜桃在线一区二区三区| 国产在线视频精品一区| av动漫一区二区| 一区久久精品| 午夜在线精品偷拍| 欧美色偷偷大香| 日韩三级在线观看| 欧美极品美女视频| 亚洲欧美成人一区二区三区| 丝袜美腿一区二区三区| 久久99国产精品久久99 | 国产目拍亚洲精品99久久精品| 欧美国产欧美综合| 国产喷白浆一区二区三区| 国产精品无圣光一区二区| 一区二区三区日韩欧美| 日本欧美一区二区在线观看| 国产一区二区电影| 成人精品一区二区三区四区 | 亚洲综合一区二区| 亚洲制服丝袜在线| 玖玖九九国产精品| 国产成人精品aa毛片| 欧美日韩综合精品| 免费在线成人av| 在线免费观看视频一区| 精品少妇一区二区三区在线视频| 26uuu国产一区二区三区| 亚洲欧美日韩国产成人精品影院 | 自拍偷拍亚洲综合| 一区二区三区精品在线| 亚洲h在线观看| 国产成人精品在线看| 91色porny蝌蚪| 国内精品久久久久久久97牛牛| 亚洲欧洲精品一区二区| 国产精品一区二区三区观看| 久久精品一本| 777午夜精品免费视频| www日韩大片| 中文字幕制服丝袜成人av| 亚洲精品视频观看| 丝袜美腿一区二区三区| 国内精品久久久久影院薰衣草| 丰满放荡岳乱妇91ww| 欧美激情91| 久久精品亚洲一区二区| 欧美sm美女调教| 亚洲一区在线播放| 精品亚洲免费视频| 国产精品一品二品| 亚洲国产日韩综合一区| 久久亚洲色图| 日韩一级在线观看| 国产精品美女一区二区在线观看| 亚洲国产综合视频在线观看| 国产成人精品综合在线观看| 狠狠v欧美v日韩v亚洲ⅴ| 成人国产精品免费| 亚洲人成免费| 欧美自拍丝袜亚洲| 国产拍欧美日韩视频二区| 亚洲午夜在线电影| 国产乱码精品一区二区三| 欧美黄色aaaa| 久久99伊人| 久久综合色综合88| 亚洲欧美日韩一区| 韩国女主播成人在线观看| 欧美91大片| 国产精品一区二区欧美| 欧美图区在线视频| 中文字幕一区二区三区不卡在线| 水蜜桃久久夜色精品一区的特点| 国产成人亚洲综合a∨婷婷| 欧美在线影院| 国产农村妇女精品一二区| 精品欧美一区二区三区精品久久| 亚洲美女免费视频| 九九国产精品视频| 欧美精品导航| 欧美探花视频资源| 亚洲欧洲一区二区三区| 国产盗摄视频一区二区三区| 校园激情久久| 欧美韩国日本不卡| 一区二区三区av电影| 99视频热这里只有精品免费| 在线亚洲+欧美+日本专区|