本文实例讲述了JQuery Ajax跨域调用和非跨域调用问题。分享给大家供大家参考,具体如下:
现在的互联网技术发展的越来越快,我们在开发过程中遇到的问题也越来越多。比如当我们需要进行跨域访问数据的时候该如何进行开发?本篇博文就记述如何使用Ajax进行跨域访问调用数据。
1、非跨域调用
我们用到的最多是这样的方式,也就是非跨域的进行访问,只是简单的在我们的网页中进行Ajax使用即可。如下面代码:
/** * 非跨域请求方式 */ function feikuayu() { $.ajax({ type: "post", url: platformUrl + "/security/modifyPwd", data: $('#updatepwdform').serialize(), dataType: "json", success: function (data) { $("#updatepwd_btn").click(); $.toast("修改成功,系统即将退出,请重新登录", 1500); }, error: function () { $.toast("网络异常", 1500); } }); }
2、跨域请求
在我们进行跨域请求时需要改变ajax固定参数:
dataType:"jsonp",
crossDomain:true,
jsonpCallback:"jsonpCallbackFun",
jsonp:"callback",
且后台返回的数据格式必须是:jsonpCallbackFun(json数据); 这里的jsonpCallbackFun是你自定义的回调函数方法名。
代码如下:
/** * 跨域请求方式 */ function kuayu() { $.ajax({ type: "post", url: platformUrl + "/security/modifyPwd", data: params, dataType: "jsonp", crossDomain: true, jsonpCallback: "jsonpCallbackFun", jsonp: "callback", success: function (data) { if (data.result == 1) { $("#updatepwd_btn").click(); $.toast("修改成功,系统即将退出,请重新登录", 1500); setTimeout("logout()", 1600); } else if (data.result == 2) { $.toast(data.msg, 1500); } else { $.toast("修改失败", 1500); } }, error: function () { $.toast("网络异常", 1500); } }); }
这样即可跨域请求了!
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《jQuery扩展技巧总结》、《jQuery常用插件及用法总结》、《jQuery常见经典特效汇总》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
问题内容: 我了解AJAX跨域策略。因此,我不能仅通过ajax HTTP请求调用“ http://www.google.com ”,并将结果显示在我的网站上。 我使用dataType“ jsonp”进行了尝试,这实际上可以工作,但是出现语法错误(显然是因为接收到的数据不是JSON格式的) 还有其他可能性可以从外部域接收/显示数据吗?iFrame是否遵循相同的政策? 问题答案: 使用AJAX获取跨域
问题内容: 我有此轮询脚本来检查是否在服务器上创建了文本文件。在本地运行良好,但在文件位于其他域时失败。我将如何重写此代码以获得跨域支持? 编辑:我最终使用YQL解决了跨域问题,尽管它可以工作,但是YQL确实很慢,这会增加相当多的性能开销。 谁能为跨域JQuery调用提出更好的解决方案? 问题答案: 在$ .ajax()调用中将dataType设置为“ JSONP” 。您必须确保响应的格式正确才能
问题内容: 我了解AJAX跨域策略。因此,我不能仅仅通过ajax HTTP请求调用“ http://www.google.com ”,并将结果显示在我的网站上。 我使用dataType“ jsonp”进行了尝试,这实际上可以工作,但是出现语法错误(显然是因为接收到的数据不是JSON格式的) 还有其他可能性可以从外部域接收/显示数据吗?iFrame是否遵循相同的政策? 问题答案: 使用AJAX获取跨
平时被问到最多的问题还是关于跨域的,其实跨域问题真的不是一个很难解决的问题。这里我来简单总结一下我推荐的几种跨域解决方案。 我最推荐的也是我工作中在使用的方式就是: cors 全称为 Cross Origin Resource Sharing(跨域资源共享)。这种方案对于前端来说没有什么工作量,和正常发送请求写法上没有任何区别,工作量基本都在后端这里。每一次请求,浏览器必须先以 OPTIONS 请
本文向大家介绍getJSON跨域SyntaxError问题分析,包括了getJSON跨域SyntaxError问题分析的使用技巧和注意事项,需要的朋友参考一下 昨天写一个功能:点击手机验证的同时获取json端的数据。 javascript代码如下: user.php代码如下: 相应如下: 问题出来了: 在火狐浏览器中: SyntaxError: missing ; before statement
问题内容: 我期待创建一个JavaScript API,其中包含facebook Javascript API提供的大多数功能。 我可以将脚本标签嵌入到远程网站中,并且需要执行从该页面到我的服务器的所有ajax调用。我正在创建一个体系结构,需要有人帮助他/她的出色思想来完成它。 问题答案: 看看https://github.com/facebook/facebook-js- sdk/blob/de