JSONP 方式返回来的是一个JS 函数名(数据块),可以理解为回调函数。Jquery 自动帮你实现了JSONP的调用方式。success : function(data){ //data 可以理解为一个JSON对象。如果使用data的数属性的话,直接使用可以了,跟使用普通的对象类似。
jsonp主要是为了解决跨域访问问题而产生的,其返回的数据格式一般就是一个js脚本,这个脚本有以下特点:返回的js脚本通常是服务端动态生成的。整个脚本通常有且仅有一条语句,且是一个函数调用。
这是unicode字符集,json默认会把汉字转换成这个的。
一个是描述信息的格式,一个是信息传递的方法。
指代不同 JSON:是一种轻量级的数据交换格式。JSONP:是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。特点不同 JSON:基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。
为了便于客户端使用数据,逐渐形成了一种非正式传输协议,人们把它称作JSONP,该协议的一个要点就是允许用户传递一个callback参数给服务端,然后服务端返回数据时会将这个callback参数作为函数名来包裹住JSON数据,这样客户端就可以随意定制自己的函数来自动处理返回数据了。
不同点:ajax的核心是通过xmlHttpRequest获取内容 jsonp的核心则是动态添加script标签来调用服务器 提供的js脚本。
JSONP 方式返回来的是一个JS 函数名(数据块),可以理解为回调函数。Jquery 自动帮你实现了JSONP的调用方式。success : function(data){ //data 可以理解为一个JSON对象。如果使用data的数属性的话,直接使用可以了,跟使用普通的对象类似。
jsonp主要是为了解决跨域访问问题而产生的,其返回的数据格式一般就是一个js脚本,这个脚本有以下特点:返回的js脚本通常是服务端动态生成的。整个脚本通常有且仅有一条语句,且是一个函数调用。
当远程数据一返回的时候,随着动态脚本的执行,这个demo函数就会被执行。到这里,你应该能明白这个技术为什么叫JSONP了吧?就是因为使用这种技术服务器会接受回调函数名作为请求参数,并将JSON数据填充进回调函数中去。
JSONP 方式返回来的是一个JS 函数名(数据块),可以理解为回调函数。Jquery 自动帮你实现了JSONP的调用方式。success : function(data){ //data 可以理解为一个JSON对象。如果使用data的数属性的话,直接使用可以了,跟使用普通的对象类似。
一般返回的是json数据或json字符串,也会有特殊的,如返回一个变量。可能还会有其他的,但我没遇到过。三种数据的读法如下:.getJSON(url,function(data){ alert(data.name)//json对象。{name:zhangsan} var bb=JSON.stringify(data)//json字符串。
这是unicode字符集,json默认会把汉字转换成这个的。