首页 > 代码库 > jsonp跨域
jsonp跨域
1.本地jsonp.html
<!DOCTYPE html> <html> <head> <title></title> <script type="text/javascript" src="http://localhost/Vitaproject/jsonp.js"></script> </head> <body> </body> </html>
远程jsonp.js
alert("ok")
2.本地jsonp.html
<!DOCTYPE html> <html> <head> <title></title> <script type="text/javascript"> //回调函数 function callback(data) { alert(data.message); } </script> <script type="text/javascript" src="http://localhost/Vitaproject/jsonp.js"></script> </head> <body> </body> </html>
远程jsonp.js
//调用callback函数,并以json数据形式作为阐述传递,完成回调 callback({message:"success"});
3.JS
本地jsonp.html
<!DOCTYPE html> <html> <head> <title></title> <script type="text/javascript"> // 得到航班信息查询结果后的回调函数 var flightHandler = function(data){ alert(‘你查询的航班结果是:票价 ‘ + data.price + ‘ 元,‘ + ‘余票 ‘ + data.tickets + ‘ 张。‘); }; // 提供jsonp服务的url地址(不管是什么类型的地址,最终生成的返回值都是一段javascript代码) var url = "http://localhost/Vitaproject/flightResult.asp?code=CA1998&callback=flightHandler"; // 创建script标签,设置其属性 var script = document.createElement(‘script‘); script.setAttribute(‘src‘, url); // 把script标签加入head,此时调用开始 document.getElementsByTagName(‘head‘)[0].appendChild(script); </script> </head> <body> </body> </html>
http://localhost/Vitaproject/flightResult.asp
flightHandler({ "code": "CA1998", "price": 1780, "tickets": 5 });
4.jQjery
本地jsonp.html
<!DOCTYPE html> <html> <head> <title>Untitled Page</title> <script type="text/javascript" src="http://www.mamicode.com/jquery-1.7.2.min.js"></script> <script type="text/javascript"> jQuery(document).ready(function(){ $.ajax({ type: "get", async: false, url: "http://localhost/Vitaproject/flightResult.asp?code=CA1998", dataType: "jsonp", jsonp: "callback",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback) jsonpCallback:"flightHandler",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据 success: function(json){ alert(‘您查询到航班信息:票价: ‘ + json.price + ‘ 元,余票: ‘ + json.tickets + ‘ 张。‘); }, error: function(){ alert(‘fail‘); } }); }); </script> </head> <body> </body> </html>
http://localhost/Vitaproject/flightResult.asp
flightHandler({ "code": "CA1998", "price": 1780, "tickets": 5 });
4.
<!DOCTYPE html> <html> <head> <title>Untitled Page</title> <script type="text/javascript" src="http://www.mamicode.com/jquery-1.7.2.min.js"></script> <script type="text/javascript"> jQuery(document).ready(function(){ $.ajax({ type: "get", url:"http://m.qqdyw.cn/lottery/draw/key/", //url:"http://www.jibuu.cn/Main/AjaxServer.aspx?Action=GetActListForDefault", dataType:‘jsonp‘, jsonp:‘callback‘, success:function(result) { console.log(result); alert(result.status) }, error: function(){ alert(‘fail‘); } }); }); </script> </head> <body> </body> </html>
({"status":0,"award":"\u4eb2\uff0c\u4e0d\u54ed","item":0})
jsonp跨域
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。