在项目中使用接口的比较多,在客户端跨域访问,jquery中只能使用jquery ajax的jsonp方法。

值得注意的是,jQuery.ajax()只支持get方式的跨域,post的方式是不支持的。

// 简写形式

$.getJSON("http://www.shuchengxian.com/index.php?callback=?",

function(data){

$("#show").text(data)

});

// 完整形式

$.ajax({

async:false,

url: 'http://www.shuchengxian.com/index.php?callback=?',  // 跨域URL  callback参数必填

type: 'GET',

dataType: 'jsonp',

jsonp: 'jsoncallback', //默认callback

data: mydata, //请求数据

timeout: 5000,

beforeSend: function(){  //jsonp 方式此方法不被触发。原因可能是dataType如果指定为jsonp的话,就已经不是ajax事件了

},

success: function (json) { //客户端jquery预先定义好的callback函数,成功获取跨域服务器上的json数据后,会动态执行这个callback函数

if(json.length!=0){

alert(json.actionErrors);

}

},

error: function(xhr){

// jsonp 方式此方法不被触发

// 请求出错处理

alert("请求出错(请检查相关度网络状况.)");

}

});

这种方式其实是上例$.ajax({..}) 的一种高级封装。

在服务端通过获得callback参数(如:jsonpcallback)得到jQuery端随后要回调的,

然后返回类似:"jsonpcallback("+要返回的json数组+")";

jquery就会通过回调方法动态加载调用这个:jsonpcallback(json数组);

如果为jQuery默认,则为随机jsonp1356493334400之类的数据。这样就达到了跨域数据交换的目的。

JSONP是一种脚本注入(Script Injection)行为,所以也有一定的安全隐患。

注意:jquey是不支持post方式跨域的。

ajax jsonp跨域访问,jquery ajax怎么使用jsonp跨域访问相关推荐

  1. jQuery ajax请求两次问题,jquery ajax请求了两次问题

    页面有一个请求form: 订单编号 用户帐户 发货状态 请选择 未发送 已发送 查询 JavaScript请求部分: function showdatalist() { var username = ...

  2. Ajax设置超时时长,jquery ajax超时设置

    var ajaxTimeoutTest = $.ajax({ url:'',  //请求的URL timeout : 1000, //超时时间设置,单位毫秒 type : 'get',  //请求方式 ...

  3. flask ajax 上传 图片,flask jQuery ajax 上传文件

    1.html 代码 注:1.html 部分主要是一个form表单,其中表单的enctype = "multipart/form-data" 必须要有. 2.由于我的页面背景颜色设置 ...

  4. ie8 jquery ajax 跨域访问,jQuery.Ajax IE8,9 无效(CORS跨域)

    今天在开发网站的时候,发现一个问题,$.ajax()在 IE8,9 浏览器不起作用,但 Chrome,Firefox ,360,IE10以上等浏览器却是可以的,网上资料很多,查询最后发现是 IE8,9 ...

  5. AJAX(GET POST请求、 jQuery axios 发送请求、跨域--cors、请求超时、网络异常、放弃请求、重复发送请求)

    根据视频进行整理 [https://www.bilibili.com/video/BV1WC4y1b78y?p=1] 视频资料 百度网盘: 链接:[https://pan.baidu.com/s/1n ...

  6. 本机上的ajax需要跨域吗,jQuery AJAX跨域

    jQuery AJAX跨域 这是两个页面,test.php和testserver.php. test.php的 $(function() { $.ajax({url:"testserver. ...

  7. ajax返回报错html,Jquery AJAX POST调用返回200状态确定,但错误

    嗨我已经实现了一个Ajax POST请求来调用Web服务.它总是返回200行,但执行失败的事件我已经尝试了很多事情,但我没有得到我犯的错误.我在这里添加我的代码. Fiddler显示响应内容,但Aja ...

  8. ajax调用ashx的方法,jquery.ajax请求aspx和ashx的异同 Jquery Ajax调用aspx页面方法

    1.jquery.ajax请求aspx 请求aspx的静态方法要注意一下问题: (1)aspx的后台方法必须静态,而且添加webmethod特性 (2)在ajax方法中contentType必须是&q ...

  9. ajax请求返回json实例,Jquery Ajax 学习实例2 向页面发出请求 返回JSon格式数据

    一.AjaxJson.aspx 处理业务数据,产生JSon数据,供JqueryRequest.aspx调用,代码如下: protected void Page_Load(object sender, ...

  10. ajax中url如何使用,jQuery Ajax url使用方式

    jQuery Ajax的使用场景: 页面需要通过后台逻辑,但只需要局部刷新以显示新的内容. jQuery Ajax url使用方式 1.servlet方式: 需要在struts.xml中写一个acti ...

最新文章

  1. MATLAB_7-彩色图像【长长的笔记!】车牌放在文章末尾有链接
  2. 一步一步教你在 Android 里创建自己的账号系统(一)
  3. JAVA多线程机制之死锁
  4. 介绍Python中的__future__模块
  5. git git git
  6. linux通信--信号量
  7. 必须理解的分布式系统中雷同的集群技术及原理
  8. WP7 网络请求之WebClient
  9. LeetCode 740. 删除与获得点数(排序+动态规划)
  10. 【恋上数据结构】图代码实现、BFS、DFS、拓扑排序
  11. 拓端tecdat|R语言GGPLOT2绘制KOLMOGOROV-SMIRNOV KS检验图ECDF经验累积分布函数曲线可视化
  12. Mysql区分大小写问题
  13. photoshop之合并图层
  14. AMap(高德官方图层)
  15. flask 登出功能
  16. js实现全屏和退出全屏功能
  17. PanDownload作者被抓,为何大家都对百度网盘如此气愤?
  18. KubeSphere 社区双周报 | OpenFunction v0.8.0 发布 | 2022-12-09
  19. 人工智能选go还是python_老程序员告诉你人工智能工程师与Python工程师有什么区别?-Go语言中文社区...
  20. 信息系统项目管理师考试经验

热门文章

  1. 微型计算机的cpu分类,微处理器分类及组成
  2. AXI总线简介(二)
  3. 电脑只能上微信不能打开网页_怎么回事?我的电脑浏览器打不开网页,但微信、QQ却又能用?...
  4. 跑马灯带你深入浅出TextView的源码世界
  5. 运维工程师可能遇到的面试题
  6. android js桥接,聊一聊桥接(JSBridge)的原理(下)
  7. 杭州师范大学仓前校区宽带认证客户端电信用户拨号宽带链接路由器
  8. 大数据、数据分析和数据挖掘的区别是什么
  9. 现代信息检索——布尔检索
  10. elasticsearch中forcemerge清除文件占用的磁盘空间