首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

说说JSON和JSONP,也许你会豁然开朗-转

,前者需要PhoneGap支持,后者要求用户设备必须支持WebSocket,因此都不能算是ST2的原生解决方案,原生的只有AJAX。   ...这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域可以通过服务器端代理来解决。   但到目前为止最被推崇或者说首选的方案还是用JSON来传数据,靠JSONP来跨域。...;   5、这样子解决方案就呼之欲出了,web客户端通过与调用脚本一模一样的方式,来调用跨域服务器上动态生成的js格式文件(一般以JSON为后缀),显而易见,服务器之所以要动态生成JSON文件,目的就在于把客户端需要的数据装入进去...哈哈,这就是jQuery的功劳了,jquery在处理jsonp类型的ajax时(还是忍不住吐槽,虽然jquery也把jsonp归入了ajax,但其实它们真的不是一回事儿),自动帮你生成回调函数并把数据取出来供...都是请求一个url,然后把服务器返回的数据进行处理,因此jquery和ext等框架都把jsonp作为ajax的一种形式进行了封装;   2、但ajax和jsonp其实本质上是不同的东西。

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

    记录一次奇葩的ajax向后台传送数据2及后台处理

    在上一篇《记录一次奇葩的ajax向后台传送数据》中我们知道了前台向后台传值的一种方法。在本文中,我们将介绍第二种方法以及后台怎么接收这样的数据。 声明:本文由凯哥Java发布在趣头条自媒体上。 ?...前端传参方式二: 在上一篇中,我们看到了参数的数据格式,是一个对象包含两个属性,其中一个属性是对象,另一个属性是数组格式的。我们又知道前端传递给后台数据类型是字符串或者是int类型的。...那么我们可以不可以就按需要参数的数据格式进行拼装参数?但是直接以字符串类型给后台,后台能接收处理吗?事实证明,如果直接字符串不行的。需要转换成JSON格式就可以的。...所以,第二个参数类型如下: $.ajax({ url:"http://www.kaigejava.com/xx/xx/task/add", type:"post", data:{data:JSON.stringify...这样我们就封装成和参数数据格式一样的对象了。接下来直接使用fastJson的方法就可以转成对象了。如下图: ? 经过以上处理,就可以解析前台传递的复杂JSON数据格式了。

    86840

    JSON与JSONP的区别

    这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域可以通过服务器端代理来解决。 但到目前为止最被推崇或者说首选的方案还是用JSON来传数据,靠JSONP来跨域。...; 5、这样子解决方案就呼之欲出了,web客户端通过与调用脚本一模一样的方式,来调用跨域服务器上动态生成的js格式文件(一般以JSON为后缀),显而易见,服务器之所以要动态生成JSON文件,目的就在于把客户端需要的数据装入进去...3、聪明的开发者很容易想到,只要服务端提供的js脚本是动态生成的就行了呗,这样调用者可以传一个参数过去告诉服务端“我想要一段调用XXX函数的js代码,请你返回给我”,于是服务器就可以按照客户端的需求来生成...哈哈,这就是jQuery的功劳了,jquery在处理jsonp类型的ajax时(还是忍不住吐槽,虽然jquery也把jsonp归入了ajax,但其实它们真的不是一回事儿),自动帮你生成回调函数并把数据取出来供...这里针对ajax与jsonp的异同再做一些补充说明: 1、ajax和jsonp这两种技术在调用方式上“看起来”很像,目的也一样,都是请求一个url,然后把服务器返回的数据进行处理,因此jquery和ext

    1.7K20

    jsonp详解

    前言 说到AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决?...这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域可以通过服务器端代理来解决。 但到目前为止最被推崇或者说首选的方案还是 用JSON来传数据,靠JSONP来跨域。...3.4 动态的函数调用 聪明的开发者很容易想到,只要服务端提供的js脚本是动态生成的就行了呗,这样调用者可以传一个参数过去告诉服务端“我想要一段调用XXX函数的js代码,请你返回给我”,于是服务器就可以按照客户端的需求来生成...,jQuery会自动为你处理数据 success: function(json){ alert('您查询到航班信息:票价: ' + json.price...哈哈,这就是jQuery的功劳了,jquery在处理jsonp类型的ajax时(还是忍不住吐槽,虽然jquery也把jsonp归入了ajax,但其实它们真的不是一回事儿),自动帮你生成回调函数并把数据取出来供

    1.6K40

    VUE跨页面传值的精妙

    它通过双向数据绑定把 View 层和 Model 层连接了起来,通过对数据的操作就可以完成对页面视图的渲染。...二、与ajax比较 2.1 axios简介 vue本身不支持ajax请求,需要借助vue-resource、axios插件。...json形式传参 传参方式: 1.自己拼接为键值对 2.使用transformRequest,在请求发送前将请求数据进行转换 3.如果使用模块化开发...,可以使用qs模块进行转换 axios本身并不支持发送跨域的请求,没有提供相应的API,作者也暂没计划在axios添加支持发送跨域请求,所以只能使用第三方库 2.2 ajax传参格式 ajax是jquery...success: function (json) { console.log(json); } }); 2.3 vue传参格式 场景:点击父页面的XX查询按钮,弹出子页面queryView

    3.6K30

    说说JSON和JSONP( 含jquery例子)

    说到AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决?...这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域可以通过服务器端代理来解决。 但到目前为止最被推崇或者说首选的方案还是用JSON来传数据,靠JSONP来跨域。...; 5、这样子解决方案就呼之欲出了,web客户端通过与调用脚本一模一样的方式,来调用跨域服务器上动态生成的js格式文件(一般以JSON为后缀),显而易见,服务器之所以要动态生成JSON文件,目的就在于把客户端需要的数据装入进去...6、客户端在对JSON文件调用成功之后,也就获得了自己所需的数据,剩下的就是按照自己需求进行处理和展现了,这种获取远程数据的方式看起来非常像AJAX,但其实并不一样。...哈哈,这就是jQuery的功劳了,jquery在处理jsonp类型的ajax时(还是忍不住吐槽,虽然jquery也把jsonp归入了ajax,但其实它们真的不是一回事儿),自动帮你生成回调函数并把数据取出来供

    1.5K50

    jQuery中的常用内容总结(二)

    都是经过jQuery封装过的,至于写法大致有ajax标准写法和jQuery简写两种,下面先给出这两种写法的样式-> $.ajax({ type : "post",...false,至于一般情况下的请求是post还是get呢,这个我给出的建议是:一般传参到后端都用post方法就可以,实际使用中这两种请求并没有明显的区别(是否幂等可以忽略不计);另外以上两种请求的方法的参数数量或返回参数的数量可能与...jQuery完整写法不一致,对于这个问题,我的解释是:在js中,方法调用和方法申明这两者之中前者的参数可以少于后者的参数数量~,遂,大家不要介意哈(●´∀`)~ B>事件  jQuery事件是在开发中几乎是每天都会有...5>jQuery UI弹窗(需要引入jquery UI) ? ?    ...咳咳~,以上5种弹窗,第一种是不可传参的,第五种需要使用jquery_UI.js(jQuery 弹窗插件)且传参需要单独从表单取值...

    1.5K110

    jQuery中的常用内容总结(二)

    ,接下来所说的ajax都是经过jQuery封装过的,至于写法大致有ajax标准写法和jQuery简写两种,下面先给出这两种写法的样式-> $.ajax({ type : "post...false,至于一般情况下的请求是post还是get呢,这个我给出的建议是:一般传参到后端都用post方法就可以,实际使用中这两种请求并没有明显的区别(是否幂等可以忽略不计);另外以上两种请求的方法的参数数量或返回参数的数量可能与...jQuery完整写法不一致,对于这个问题,我的解释是:在js中,方法调用和方法申明这两者之中前者的参数可以少于后者的参数数量~,遂,大家不要介意哈(●´∀`)~ B>事件  jQuery事件是在开发中几乎是每天都会有...5>jQuery UI弹窗(需要引入jquery UI) ? ?    ...咳咳~,以上5种弹窗,第一种是不可传参的,第五种需要使用jquery_UI.js(jQuery 弹窗插件)且传参需要单独从表单取值...

    1.2K30

    jQuery中的常用内容总结(二)

    ),恍惚之间时间已经从身边流走~,好难过≡(▔﹏▔)≡;所以,我决定这次不管熬夜到几点都要把本节和第三节内容全部写完~ ajax在实际开发中用的特别多,尤其是前后端分离的今天甚是~,接下来所说的ajax...都是经过jQuery封装过的,至于写法大致有ajax标准写法和jQuery简写两种,下面先给出这两种写法的样式-> $.ajax({ type : "post",...jQuery完整写法不一致,对于这个问题,我的解释是:在js中,方法调用和方法申明这两者之中前者的参数可以少于后者的参数数量~,遂,大家不要介意哈(●´∀`)~ B>事件  jQuery事件是在开发中几乎是每天都会有...5>jQuery UI弹窗(需要引入jquery UI) ? ?    ...咳咳~,以上5种弹窗,第一种是不可传参的,第五种需要使用jquery_UI.js(jQuery 弹窗插件)且传参需要单独从表单取值...

    2.9K40

    跨域

    跨域解决方案 2.1 jsonp JSONP 原理 利用 script 标签没有跨域限制的漏洞,网页可以得到从其他来源动态产生的 JSON 数据。JSONP 请求一定需要对方的服务器做支持才可以。...JSONP 和 AJAX 对比 JSONP 和 AJAX 相同,都是客户端向服务器端发送请求,从服务器端获取数据的方式。...服务器接收到请求后,需要进行特殊的处理:把传递进来的函数名和它需要给你的数据拼接成一个字符串,例如:传递进去的函数名是 show,它准备好的数据是show('我不爱你')。...接下来我们看个例子: http://localhost:3000/a.html页面向http://localhost:4000/b.html传递“我爱你”,然后后者传回"我不爱你"。...具体实现步骤:一开始 a.html 给 c.html 传一个 hash 值,然后 c.html 收到 hash 值后,再把 hash 值传递给 b.html,最后 b.html 将结果放到 a.html

    4.6K30

    九种跨域方式实现原理(完整版)

    JSONP请求一定需要对方的服务器做支持才可以。 2) JSONP和AJAX对比 JSONP和AJAX相同,都是客户端向服务器端发送请求,从服务器端获取数据的方式。...4) JSONP的实现流程 声明一个回调函数,其函数名(如show)当做参数值,要传递给跨域请求数据的服务器,函数形参为要获取目标数据(服务器返回的data)。...服务器接收到请求后,需要进行特殊的处理:把传递进来的函数名和它需要给你的数据拼接成一个字符串,例如:传递进去的函数名是show,它准备好的数据是 show('我不爱你')。...接下来我们看个例子: http://localhost:3000/a.html页面向 http://localhost:4000/b.html传递“我爱你”,然后后者传回"我不爱你"。...具体实现步骤:一开始a.html给c.html传一个hash值,然后c.html收到hash值后,再把hash值传递给b.html,最后b.html将结果放到a.html的hash值中。

    1.4K30

    jQuery ajax - ajax() 方法jQuery ajax - ajax() 方法

    AJAX 请求设置。所有选项都是可选的。 async 类型:Boolean 默认值: true。默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。...在 1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。...回调函数 如果要处理 $.ajax() 得到的数据,则需要使用回调函数:beforeSend、error、dataFilter、success、complete。...JSON 数据是一种能很方便通过 JavaScript 解析的结构化数据。如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用 jsonp 类型。...如果使用了后者的形式,则数据再发送器会被转换成查询字符串。这个处理过程也可以通过设置 processData 选项为 false 来回避。

    14.5K30

    AJAX基础

    AJAX 简介 AJAX 是与浏览器与服务器交换数据的技术,它在不重载全部页面的情况下,实现了前后台数据交互,可以选择操作dom对页面进行更新 jQuery 提供多个与 AJAX 有关的方法。...通过 jQuery AJAX 方法,您能够使用 HTTP Get 和 HTTP Post 从远程服务器上请求文本(text)、HTML、XML 或 JSON - 同时您能够把这些外部数据直接载入网页的被选元素中...不过,jQuery 团队为我们解决了这个难题,我们只需要一行简单的代码,就可以实现 AJAX 功能 常用属性参数 参 数 类 型 说 明 url String 发送请求的地址,默认为当前页地址 type...如果需要发送同步请求,请将此选项设置为 false。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。...对象 resp.getWriter().print()可以传对象 resp.getWriter().writer()只能传字符串 需要灵活运用 JSON 简介 JSON(JavaScript Object

    68510

    Jquery Ajax请求文件下载操作失败的原因分析及解决办法

    PS:AJAX请求 $.ajax方法的使用 使用jQuery的$.ajax方法可以更为详细的控制AJAX请求。它在AJAX请求上施加细粒度级别的控制。...在这两种情况下,都是由$.ajax()实用工具函数来处理值的编码 dataType 字符串 一个关键字,用来标识预期将被响应所返回的数据的类型。...这个值决定再把数据传递给回调函数之前(如果有)进行什么后续处理。...在已返回HTML片段内的任何块将被求值 json-响应文本被求值为JSON字符串,而作为结果的对象被传递给回调函数 jsonp-与json相似,不同之处是提供远程脚本支持(假定远程服务器支持...如果省略这个属性,则不对响应文本进行任何处理或求值就传递给回调函数 timeout 数值 设置Ajax请求的超时值(毫秒)。

    3.6K30

    jquery中ajax参数详解

    AJAX 请求设置。所有选项都是可选的。 async 类型:Boolean 默认值: true。默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。...在 1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。...回调函数 如果要处理 $.ajax() 得到的数据,则需要使用回调函数:beforeSend、error、dataFilter、success、complete。...JSON 数据是一种能很方便通过 JavaScript 解析的结构化数据。如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用 jsonp 类型。...如果使用了后者的形式,则数据再发送器会被转换成查询字符串。这个处理过程也可以通过设置 processData 选项为 false 来回避。

    2.1K30

    快速理解 Axios

    Axios (引入:cnpm install axios -S) Axios 是一个基于promise设计模式封装的AJAX库(JQ中的AJAX就是最普通的AJAX库,没有基于PROMISE管理模式)...React等框架的出现,促使了Axios轻量级库的出现,因为Vue等,不需要操作Dom,所以不需要引入Jquery.js了。...axios.head(url[, config]) axios.delete(url[, config]) POST系列: axios.post(url[,data[,OPTIONS]]) 【data:通过请求主体传递给服务器的内容...paramsSerializer:传递参数的序列化 data(在post请求中,一般不写进配置项,调用方法时直接传即可):是作为请求主体被发送的数据,只适用于 PUT,POST,PATCH这些方法 timeout...,TEXT,STREAM 我们来发送几个最简单的axios请求 GET 发送请求 执行axios.xxx()都会返回一个PROMISE实例,AJAX请求成功会把实例状态改为FULFULLED,AJAX请求失败会把实例状态改为

    13110
    领券
    首页
    学习
    活动
    专区
    圈层
    工具