`
nannan408
  • 浏览: 1771048 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

架构师之json--------jsonp的纯js和jquery方式调用

 
阅读更多
1.前言.
   如题.jsonp和json最大的区别是jsonp可以跨域,是通过url调用外界服务器的js实现数据远程获取.jquery的写法的数据格式不一样,一个是json,一个是jsonp.
2.调用.
   (1)jquery方式调用



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
     <title>Untitled Page</title>
      <script type="text/javascript" src=jquery.min.js"></script>
      <script type="text/javascript">
     jQuery(document).ready(function(){
        $.ajax({
             type: "get",
             async: false,
             url: "http://flightQuery.com/jsonp/flightResult.aspx?code=CA1998",
             dataType: "jsonp",
             jsonp: "callback",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)
             jsonpCallback:"flightHandler",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据
             success: function(json){
                 alert('您查询到航班信息:票价: ' + json.price + ' 元,余票: ' + json.tickets + ' 张。');
             },
             error: function(){
                 alert('fail');
             }
         });
     });
     </script>
     </head>
  <body>
  </body>
 </html>
    

(2)纯js调用


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script type="text/javascript">
    // 得到航班信息查询结果后的回调函数
    var flightHandler = function(data){
        alert('你查询的航班结果是:票价 ' + data.price + ' 元,' + '余票 ' + data.tickets + ' 张。');
    };
    // 提供jsonp服务的url地址(不管是什么类型的地址,最终生成的返回值都是一段javascript代码)
    var url = "http://flightQuery.com/jsonp/flightResult.aspx?code=CA1998&callback=flightHandler";
    // 创建script标签,设置其属性
    var script = document.createElement('script');
    script.setAttribute('src', url);
    // 把script标签加入head,此时调用开始
    document.getElementsByTagName('head')[0].appendChild(script);
    </script>
</head>
<body>
</body>
</html>





本文主要参考博客园的“ 随它去吧”这位博主的文章:  http://kb.cnblogs.com/page/139725/,再次对博主的辛勤奉献表示崇敬。
分享到:
评论

相关推荐

    ezmorph-1.0.6.jar和json-lib-2.2.2-jdk15.rar

    标题中的"ezmorph-1.0.6.jar"和"json-lib-2.2.2-jdk15.rar"指的是两个不同的Java库,用于处理数据转换和JSON操作。ezmorph是一个Java库,提供了对象到对象的转换功能,而json-lib是另一个库,专门用于处理JSON...

    json-viewer, 它是用于打印JSON和JSONP的Chrome 扩展.zip

    json-viewer, 它是用于打印JSON和JSONP的Chrome 扩展 JSON查看器 你的眼睛所见过的最漂亮和可以定制的json/。 它是用于打印JSON和JSONP的Chrome 扩展。注释:这里扩展可能会与其他JSON萤火虫/格式化程序发生碰撞,你...

    jquery.json-2.3.js

    在给定的资源“jquery.json-2.3.js”中,我们可以看到jQuery针对JSON进行的一系列扩展,使得在JavaScript中处理JSON数据变得更加简单和高效。 首先,jQuery JSON 2.3.js的核心功能是JSON的解析和序列化。解析JSON...

    jquery-jsonp.js

     5、这样子解决方案就呼之欲出了,web客户端通过与调用脚本一模一样的方式,来调用跨域服务器上动态生成的js格式文件(一般以JSON为后缀),显而易见,服务器之所以要动态生成JSON文件,目的就在于把客户端需要的...

    jquery-jsonp-master.zip_jsonp

    `jquery-jsonp-master.zip`是一个包含jQuery JSONP实现的压缩包,适用于学习和应用轻量级的JSONP解决方案。 首先,我们需要了解JSONP的基本原理。由于同源策略的限制,JavaScript通常不能直接向其他域名发送Ajax...

    JSON-lib框架,转换JSON、XML不再困难

    JSONP允许开发者指定一个回调函数名,JSON数据会被包裹在这个函数调用中,以便在JavaScript中可以直接执行。 在实际项目中,JSON-lib通常与其他框架如Spring、Struts等结合使用,以实现数据的序列化和反序列化。...

    jquery-jsonp-master.zip

    `jquery-jsonp-master.zip`这个压缩包文件包含了一个专门用于jQuery的JSONP插件,旨在简化和优化JSONP请求的过程。通过这个插件,开发者能够更方便地在他们的应用中集成跨域数据请求,从而获取远程服务器上的JSON...

    Json-handle和jsonview插件

    JSON,全称JavaScript Object Notation,是一种轻量级的数据交换格式,因其简洁、易读、易写的特点,广泛应用于Web服务和应用程序之间的数据传输。在开发过程中,处理JSON数据时,有时原始的文本格式并不直观,这时...

    前端开源库-json-proxy

    - 依赖性:`json-proxy` 基于Node.js和Express,确保系统中已经安装了这些依赖。 - 版本更新:及时关注`json-proxy` 的版本更新,以获取新功能和修复的bug。 总结来说,`json-proxy` 是前端开发中的得力助手,能够...

    json-lib学习用完整jar包

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在Java开发中,json-lib是一个非常实用的库,它提供了丰富的API来处理JSON数据,包括序列化Java对象...

    jquery-jsonp:jquery jsonp 插件

    jQuery-JSONP jQuery-JSONP 是 jQuery 的 JSONP 实现的一个紧凑(1.8kB 缩小)但功能丰富的替代解决方案。 许可 jQuery-JSONP 是在下发布的。 下载 您可以下载 jQuery-JSONP(提供全文和缩小版本)。 特征 jQuery-...

    jersey-json-1.7.jar

    例如,Jackson提供了高性能的JSON解析和生成,而JSON-P是Java EE平台的一部分,提供了一种标准的方式来处理JSON。 4. **JSONP支持**: JSONP(JSON with Padding)是一种跨域数据交互协议,常用于JavaScript在浏览器...

    jquery-3.1.1.js 、jquery-3.1.1.min.js 【jquery包 js】

    在Web开发领域,jQuery是一个不可或缺的JavaScript库,它极大地简化了JavaScript的DOM操作、事件处理、动画制作和Ajax交互。这里我们主要关注的是jQuery 3.1.1版本,包括其常规版本与压缩版的特性及其在实际应用中的...

    jquery-jsonp

    jquery-jsonp插件

    jquery-2.1.4.js 、jquery-2.1.4.min.js 【jquery包 js】

    标题中提到的"jquery-2.1.4.js"和"jquery-2.1.4.min.js"正是这个库的两个版本,它们在网页动态效果处理、DOM操作、事件处理等方面有着广泛的应用。 首先,我们来了解下jQuery的核心理念: "Write Less, Do More"。...

    jquery-2.0.3.js和jquery-2.0.3.min.js

    在JavaScript的世界里,jQuery以其易用性、高效性和广泛支持的特性,成为了开发者们最钟爱的库之一。本篇将深入探讨jQuery 2.0.3这个特定版本,以及它在Web开发中的重要地位。 jQuery是一个开源的JavaScript库,由...

    json-lib-support-spring-源码.rar

    JSON-lib 是一个流行的 Java 库,用于将 Java 对象转换为 JSON(JavaScript Object Notation)格式,反之亦然。在 "json-lib-support-spring-源码.rar" 中,我们可以找到 JSON-lib 与 Spring 框架集成的源代码,这...

    前端项目-fetch-jsonp.zip

    - `fetch-jsonp.js`:这是实现Fetch API JSONP功能的核心代码,包括创建回调函数、构造URL、处理响应和清理的逻辑。 - `example.html`/`index.html`:示例网页,展示了如何使用fetch-jsonp库进行JSONP请求。 - `...

    vue-jsonp:一个用于处理JSONP请求的小型库

    $jsonp ( '/some-jsonp-url' , { myCustomUrlParam : 'veryNice'} ) 直接使用功能: import { jsonp } from 'vue-jsonp'jsonp ( '/some-jsonp-url' , { myCustomUrlParam : 'veryNice'} )发送数据并设置查询和函数...

    Silverlight通过json-rpc交互数据

    json-rpc是一种基于JSON(JavaScript Object Notation)的数据交换协议,用于远程调用服务端的方法。与传统的HTTP请求不同,json-rpc允许单个HTTP请求执行多个服务操作,提高了通信效率。JSON因其简洁、易于解析的...

Global site tag (gtag.js) - Google Analytics