jquery中ajax跨域方法实例分析
本文实例分析了jquery中ajax跨域。分享给大家供大家参考,具体如下:
JSONP是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问
方法一: jsonp之 getJSON
js
var url = "http://localhost/mytest/jsonp_php.php?callback=?";
$.getJSON(url, {
"age": 21,
"name": "kitty"
}, function (data) {
alert("name:" + data.name + ", age:" + data.age);
});
php
<?php
$age=$_GET["age"];
$name=$_GET["name"];
$jsondata = "{age:$age, name:'$name'}";
echo $_GET['callback'].'('.$jsondata.')';
?>
二jsonp之$.ajax
js
$.ajax({
type: 'GET',
url: 'http://localhost/mytest/jsonp_php.php',
dataType: "jsonp",
jsonp: "callback5",
jsonpCallback:"flightHandler",
data: {
"age": 21,
"name": "kitty"
},
success: function (data) {
alert("name:" + data.sd + ", age:" + data.aa)
}
})
php
<?php
$age=$_GET["age"];
$name=$_GET["name"];
$ary=array("sd"=>"sdfg","aa"=>23);
$jsondata=json_encode($ary);
echo $_GET['callback5'].'('.$jsondata.')';
?>
希望本文所述对大家jQuery程序设计有所帮助。
相关推荐
-
java 结合jQuery实现跨域名获取数据的方法
一.什么是跨域? 由于浏览器出于安全的考虑,采取了同源策略的限制,使得jQuery无法直接跨域名互相操作对象或数据.例如:a.com 域名下的 a.html页面利用jQuery无法操作b.com 域名下b.html页面的对象或是数据, 并且默认情况下也不能操作test.a.com域名下的 test.html的 对象或是数据 .只要满足下面条件的jQuery都会视为跨域名: 1.主域相同,子域不同,如xxx.aaa.com和yyy.aaa.com 2.域名相同,端口不同,如xxx.aaa.com:
-
JQuery 的跨域方法推荐_可跨任何网站
因发现有不少博友发园内短信问及JS的跨域问题,我想很多程序员的脑海里面还认为JS是不能跨域的,其实这是一个错误的观点:有很多人在网上找其解决方法,教其用IFRAME去解决的文章很多,真有那么复杂吗?其实很简单的,如果你用JQUERY,一个GETJSON方法就搞定了,而且是一行代码搞定. 下面开始贴出方法. //跨域(可跨所有域名) $.getJSON("http://user.hnce.com.cn/getregion.aspx?id=0&jsoncallback=?",fun
-
jQuery 获取跨域XML(RSS)数据的相关总结分析
前段时间项目,需要前端JS获取跨域XML(RSS),最先打算使用jQuery.ajax方法获取,但是在ie9以下,提示"拒绝访问的" 略尴尬,网上查找了相关资料总结了以下几种方法: 一.google的jGFeed:相信很多同学对这个应该不陌生,使用也相对简单: 源码: (function($){ $.extend({ jGFeed : function(url, fnk, num, key){ // Make sure url to get is defined if(url == n
-
jQuery跨域问题解决方案
通过XMLHTTPRquest请求不同域上的数据,原来js跨域访问是后台有个处理路径"/test"的函数.下面把具体解决方案介绍如下. 后台处理路径"/test"的函数: 复制代码 代码如下: //路径处理 app.get("/test",user.test); //处理函数 exports.test=function(req,res){ res.end("alert('JS跨域访问')"); }; 外部有一个网页需要
-
利用JQuery和Servlet实现跨域提交请求示例分享
原理:JavaScript的Ajax不可以跨域,但是可以通过向本地的一个Servlet发出请求,由Servlet完成跨域.再把远程的结构返回给客户端.这样Ajax就可以跨域了.在后面,再发一个PHP版本的,请大家关注啊.下面是代码 JS代码: 注意:在Post方式时,param1和param2为向远程发送的参数值,可以有多个. 复制代码 代码如下: //GET方式function reqeustCrossDomainProxyGet(){ var url = "http://www.bai
-
jQuery使用ajax跨域获取数据的简单实例
jQuery使用ajax跨域获取数据的简单实例 var webMethod = "http://localhost:54473/Service1.asmx/HelloWorld"; jQuery.support.cors = true; //之前没有加这句老是提示no transport,我没去深想. $.ajax ({ type: "POST", contentType: "application/x-www-form-urlencoded",
-
jquery中ajax处理跨域的三大方式
由于JS同源策略的影响,因此js只能访问同域名下的文档.因此要实现跨域,一般有以下几个方法: 一.处理跨域的方式: 1.代理 2.XHR2 HTML5中提供的XMLHTTPREQUEST Level2(及XHR2)已经实现了跨域访问.但ie10以下不支持 只需要在服务端填上响应头: header("Access-Control-Allow-Origin:*"); /*星号表示所有的域都可以接受,*/ header("Access-Control-Allow-Methods:G
-
jquery的ajax跨域请求原理和示例
今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题,隐约记得Jquery有提过一个ajax跨域请求的解决方式,于是即刻翻出Jquery的API出来研究,发 JQuery对于Ajax的跨域请求有两类解决方案,不过都是只支持get方式.分别是JQuery的 jquery.ajax jsonp格式和jquery.getScript方式. 什么是jsonp格式呢?API原文:如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用jsonp类型.
-
jQuery使用ajax跨域请求获取数据
跨域是我在日常面试中经常会问到的问题,这词在前端界出现的频率不低,主要原因还是由于安全限制(同源策略, 即JavaScript或Cookie只能访问同域下的内容),因为我们在日常的项目开发时会不可避免的需要进行跨域操作,所以跨域能力也算是前端工程师的基本功之一. var webMethod = "http://localhost:54473/Service1.asmx/HelloWorld"; jQuery.support.cors = true; //之前没有加这句老是提示no tr
-
深入理解jquery跨域请求方法
项目中关于ajax jsonp的使用, 出现了问题:可以成功获得请求结果,但没有执行success方法 总算搞定了,记录一下 function TestAjax() { $.ajax({ type : "get", async : false, url : "ajaxHandler.ashx", //实际上访问时产生的地址为: ajax.ashx?callbackfun=jsonpCallback&id=10 data : {id : 10}, cache
-
jquery+ajax实现跨域请求的方法
本文实例讲述了jquery+ajax实现跨域请求的方法.分享给大家供大家参考.具体实现方法如下: 说明:这里的dataType 为 "jsonp" :type 只能为 GET 前台请求代码如下: 复制代码 代码如下: $.ajax({ type: "GET", url: "http://www.xxx.com/Rest/ValidAccountsExists.aspx?accounts=admin", dataType: "j
-
jquery跨域请求示例分享(jquery发送ajax请求)
jQuery中常用getJSON来调用并获取远程的JSON字符串,将其转换为JSON对象,如果成功,则执行回调函数.原型如下: jQuery.getJSON( url, [data], [callback] ) 跨域加载JSON数据. url: 发送请求的地址data : (可选) 待发送key/value参数callback: (可选) 载入成功时的回调函数主要用于客户端获取服务器JSON数据.简单示例: 服务器脚本,返回JSON数据: 复制代码 代码如下: // $.getJSON.php$
随机推荐
- js 客户端打印html 并且去掉页眉、页脚的实例
- ASP.NET Core MVC 配置全局路由前缀
- FCKeditor编辑器添加图片上传功能及图片路径问题解决方法
- 禁止iframe页面的所有js脚本如alert及弹出窗口等
- jQuery+CSS实现菜单滑动伸展收缩(仿淘宝)
- AngularJS入门教程之控制器详解
- javascript loadScript异步加载脚本示例讲解
- js精准的倒计时函数分享
- .Net中实现无限分类的2个例子
- Destoon实现多表查询示例
- 详解VueJS 数据驱动和依赖追踪分析
- 详解C语言中的ttyname()函数和isatty()函数的用法
- File文件控件,选中文件(图片,flash,视频)即立即预览显示
- 威金变种病毒的查杀方法
- 异步的SQL数据库封装详解
- 谈谈Tempdb对SQL Server性能优化有何影响
- js css样式操作代码(批量操作)
- dedecms tags keywords问题修正方法
- 不使用php api函数实现数组的交换排序示例
- 解决docker pull被复位出现的问题
