首页
学习
活动
专区
圈层
工具
发布

json和jsonp的使用区别

json和jsonp   JSON是一种基于文本的数据交换方式(不支持跨域),而JSONP是一种非官方跨域数据交互协议。   .../json; charset=utf-8", 10 dataType: "json", //json不支持跨域请求,只能使用jsonp 11 data: { 12 user: JSON.stringify...众所周知,js文件的调用不受跨域与否的限制,因此如果想通过纯web端跨域访问数据,只能在远程服务器上设法将json数据封装进js格式的文件中,供客户端调用和进一步处理,这就是jsonp协议的原理。...=utf-8", 11 dataType: "jsonp", //json不支持跨域请求,只能使用jsonp 12 data: { 13 user: JSON.stringify(user) 14...在处理jsonp类型的ajax时,自动帮你生成回调函数并把数据取出来供success属性方法来调用。

79730

说说JSON和JSONP( 含jquery例子)

我们拿最近比较火的谍战片来打个比方,JSON是地下党们用来书写和交换情报的“暗号”,而JSONP则是把用暗号书写的情报传递给自己同志时使用的接头方式。看到没?...6、客户端在对JSON文件调用成功之后,也就获得了自己所需的数据,剩下的就是按照自己需求进行处理和展现了,这种获取远程数据的方式看起来非常像AJAX,但其实并不一样。...剩下的就是如何把代码封装一下,以便于与用户界面交互,从而实现多次和重复调用。 什么?你用的是jQuery,想知道jQuery如何实现jsonp调用?...好吧,那我就好人做到底,再给你一段jQuery使用jsonp的代码(我们依然沿用上面那个航班信息查询的例子,假定返回jsonp结果不变): jQuery的功劳了,jquery在处理jsonp类型的ajax时(还是忍不住吐槽,虽然jquery也把jsonp归入了ajax,但其实它们真的不是一回事儿),自动帮你生成回调函数并把数据取出来供

1.7K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    jquery.ajax()怎么把获取来的内容转为JSON,并使用。

    现在越来越多的接口调用返回的数据类型为json数据类型,所以我们在写网页的时候通过AJAX调用数据的话可以通过设置JQ的属性 dataType : "json", 来设置返回数据的格式。...设置了这个属性之后我们就可以按JSON格式使用AJAX返回的内容。...实际代码如下: $.ajax({ type: 'GET', url: 'url.php', dataType : "json",...中我们得到的 a 的内容为一个JSON字符串 {"errcode":xxx,"errmsg":"xxxxxxxxxxxxxx"}, 在浏览器的控制器中我们可以看到当触发AJAX时,控制器中返回一个数组。...这样就代表成功了,这时候我就就可以使用 a.errmsg 调用返回信息了。 但在微信小程序里面的wx.request 直接使用 a.data.errmsg这种方式就可以调用内容,不需要转换。

    1.9K20

    【jquery Ajax】基础概念与使用教学

    函数                 语法                  使用$.ajax()发起的get请求                   使用$.ajax()发起的post请求 ----...:当点击页码值的时候,通过ajax的形式,根据页码值动态刷新表格的数据(局部刷新) 了解jquery中的Ajax 浏览器中提供的XMLHttpRequest用法比较复杂,所以jquery对其进行了封装...,提供了一系列Ajax相关的函数,极大地降低了Ajax的使用难度。...         $.get()发起不带参数的请求 使用$.get()函数发起不带参数的请求时,直接提供请求的URL地址和请求成功之后的回调函数即可。...函数                 语法 相比于.get()和.post()函数,jquery中提供的                  使用$.ajax()发起的get请求

    3.2K20

    使用YQL解决跨域请求json转jsonp问题

    一、跨域报错 首先,是跨域请求的问题,jQuery默认不支持跨域请求,报错如下: index.html:1 XMLHttpRequest cannot load http://www.weather.com.cn...(dataType)指定为jsonp ,其实指定了这个默认就会开启跨域了,不用进行1操作 二、返回格式报错 这个问题的主要原因在于jQuery ajax要求请求数据类型和返回数据类型是一致的。...因为网站返回的数据类型是json,这跟我们指定的数据交互格式jsonp不一致,在调用时可以看到网络已经返回数据,但是$.ajax并不能以jsonp格式解析数据,在控制台报了如下错误: 这个问题就有点难度了...,请求格式不是jsonp,直接不让发送数据,而返回数据又固定为json,真是巨坑啊。...折腾了半天,最后解决方案如下:  使用雅虎提供的YQL代理将数据转换,并且支持网上绝大多数的数据格式,我们只需要按照它指定的格式提交地址即可。

    21810
    领券