JQuery Ajax跨域调用和非跨域调用问题实例分析


Posted in jQuery onApril 16, 2019

本文实例讲述了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 相关文章推荐
jQuery使用正则验证15/18身份证的方法示例
Apr 27 jQuery
jquery append与appendTo方法比较
May 24 jQuery
jQuery为某个div加入行样式
Jun 09 jQuery
jQuery封装placeholder效果实现方法,让低版本浏览器支持该效果
Jul 08 jQuery
jQuery实现锚点向下平滑滚动特效示例
Aug 29 jQuery
jquery tmpl模板(实例讲解)
Sep 02 jQuery
jQuery实现的点击按钮改变样式功能示例
Jul 21 jQuery
jQuery中each遍历的三种方法实例分析
Sep 07 jQuery
JS/jQuery实现获取时间的方法及常用类完整示例
Mar 07 jQuery
jQuery实现动态添加和删除input框代码实例
Mar 29 jQuery
jQuery插件simplePagination的使用方法示例
Apr 28 jQuery
Jquery 获取相同NAME 或者id删除行操作
Aug 24 jQuery
详解jQuery中的getAll()和cleanData()
Apr 15 #jQuery
详解JQuery基础动画操作
Apr 12 #jQuery
详解jQuery设置内容和属性
Apr 11 #jQuery
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
Apr 10 #jQuery
jQuery中实现text()的方法
Apr 04 #jQuery
基于 jQuery 实现键盘事件监听控件
Apr 04 #jQuery
jQuery分组选择器简单用法示例
Apr 04 #jQuery
You might like
php ignore_user_abort与register_shutdown_function 使用方法
2009/06/14 PHP
PHP开发环境配置(MySQL数据库安装图文教程)
2010/04/28 PHP
php数组转换js数组操作及json_encode的用法详解
2013/10/26 PHP
PHP简单选择排序算法实例
2015/01/26 PHP
PHP基于yii框架实现生成ICO图标
2015/11/13 PHP
PHP聚合式迭代器接口IteratorAggregate用法分析
2017/12/28 PHP
PHPTree――php快速生成无限级分类
2018/03/30 PHP
Ctrl+Enter提交内容信息
2006/06/26 Javascript
妙用Jquery的val()方法
2012/06/27 Javascript
javascript学习(二)javascript常见问题总结
2013/01/02 Javascript
js实现九宫格图片半透明渐显特效的方法
2015/02/16 Javascript
JavaScript弹出对话框的三种方式
2016/03/23 Javascript
AngularJS Phonecat实例讲解
2016/11/21 Javascript
使用axios请求接口,几种content-type的区别详解
2019/10/29 Javascript
selenium+java中用js来完成日期的修改
2019/10/31 Javascript
Js代码中的span拼接问题解决
2019/11/22 Javascript
VUE实现自身整体组件销毁的示例代码
2020/01/13 Javascript
JavaScript变量Dom对象的所有属性
2020/04/30 Javascript
[01:14:19]NAVI vs Mineski 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
python 正则表达式 概述及常用字符
2009/05/04 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
2018/01/24 Python
使用Python从零开始撸一个区块链
2018/03/14 Python
python清除函数占用的内存方法
2018/06/25 Python
Python实现简单查找最长子串功能示例
2019/02/26 Python
Python使用lambda表达式对字典排序操作示例
2019/07/25 Python
解决Atom安装Hydrogen无法运行python3的问题
2019/08/28 Python
python 实现生成均匀分布的点
2019/12/05 Python
tensorflow ckpt模型和pb模型获取节点名称,及ckpt转pb模型实例
2020/01/21 Python
TensorFlow 读取CSV数据的实例
2020/02/05 Python
运行python提示no module named sklearn的解决方法
2020/11/29 Python
anaconda安装pytorch1.7.1和torchvision0.8.2的方法(亲测可用)
2021/02/01 Python
工程师自我评价怎么写
2013/09/19 职场文书
小学教师暑期培训方案
2014/08/28 职场文书
2019自荐信范文集锦!
2019/07/03 职场文书
MySQL 那些常见的错误设计规范,你都知道吗
2021/07/16 MySQL
win10壁纸在哪个文件夹 win10桌面背景图片文件位置分享
2022/08/05 数码科技