`

jquery远程获取json并解析

 
阅读更多

 

$(document).ready(function() {

   $("#testLink").click(function(e) {

      e.preventDefault();

      $("#resultBlock").html("Getting the funk - stand by...");    

      $.get("http://www.coldfusionjedi.com/demos/may62011/ray.cfc?method=hellofromray&returnFormat=plain", {}, function(data) {

      $("#resultBlock").html(data);

        })

    });

});

 

http://www.xidea.org/

 

<p>这两天用 Jquery 跨域取数据的时候,经常碰到 invalid label 这个错误,十分的郁闷,老是取不到服务器端发送回来的 json 值,一般跨域用到的两个方法为:$.ajax 和 $.getJson</p>
<p>最后,仔细安静下来,细读 json 官方文档后发现这么一段:</p>
<p>JSON数据是一种能很方便通过JavaScript解析的结构化数据。如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据), 则需要使用jsonp类型。使用这种类型的话,会创建一个查询字符串参数 callback=? ,这个参数会加在请求的URL后面。服务器端应当在JSON数据前加上回调函数名,以便完成一个有效的JSONP请求。如果要指定回调函数的参数名来取代 默认的callback,可以通过设置$.ajax()的jsonp参数。</p>
<p>其实jquery跨域的原理是通过外链 &lt;script&gt;&nbsp; 来实现的,然后在通过回调函数加上回调函数的参数来实现真正的跨域</p>
<p>Jquery 在每次跨域发送请求时都会有callback这个参数,其实这个参数的值就是回调函数名称,所以,服务器端在发送json数据时,应该把这个参数放到前 面,这个参数的值往往是随机生成的,如:jsonp1294734708682,同时也可以通过 $.ajax 方法设置 callback 方法的名称。明白了原理后,服务器端应该这样发送数据:</p>
<p>string message = "jsonp1294734708682({\"userid\":0,\"username\":\"null\"})";</p>
<p>这样,json 数据 {\"userid\":0,\"username\":\"null\"} 就作为了 jsonp1294734708682 回调函数的一个参数</p>
<p>跨域获得Json时invalid label的解决办法:</p>
<p><br />服务器端在输出 Json 数据时,前面加上 callback 参数的值,如:jsonp1294734708682({\"userid\":0,\"username\":\"null\"})</p></div><div id="MySignature"><a href="http://shenzhidao.com ">我的问题</a>网 www.shenzhidao.com 有关于网站的东西欢迎大家一起交流!</div>

分享到:
评论

相关推荐

    Ajax +jquery跨域获取JSON

    总的来说,"Ajax + jQuery跨域获取JSON"的技术实现是Web开发中的常见实践,它使得网页能够动态地、无刷新地获取并显示远程数据,提高了用户体验。通过合理利用JSONP或CORS,开发者可以突破同源策略的限制,实现丰富...

    jQuery使用getJSON方法获取json数据完整示例

    jQuery中的`$.getJSON()`是一个非常方便的方法,用于异步获取JSON格式的数据,并自动进行JSON解析。这个方法结合了`$.get()`和内置的JSON解析器,使得从服务器获取并处理JSON数据变得更加简单。在给定的示例中,我们...

    简单的SSH+JQuery+JSON例子

    这样一个例子展示了如何利用SSH处理后台业务逻辑,使用JQuery进行前端交互,并通过JSON进行数据交换,形成一个完整的Web应用程序流程。理解并熟练掌握这些技术对于Java Web开发者来说至关重要。

    jquery的$getjson调用并获取远程的JSON字符串问题

    本文将详细介绍使用$.getJSON方法调用远程JSON字符串,并解决可能遇到的一些问题。 首先,让我们了解$.getJSON方法的基本用法。$.getJSON方法是jQuery库中的一个函数,它的作用是发送一个GET请求,用于从服务器获取...

    ssh2+jquery+json

    前端再用jQuery解析JSON数据,更新页面内容,提供反馈给用户。 在提供的压缩包文件中,“ssh2+jquery+json”很可能包含了一个示例项目,展示了如何在客户端使用jQuery进行Ajax请求,服务器端使用SSH2执行命令,以及...

    Struts2+HighChart+Jquery远程加载 折线图

    它可以快速方便地从服务器拉取数据并自动进行JSON解析。 在Struts2 Action中,你需要创建一个方法来处理请求并返回JSON数据。由于我们不需要指定type="json",这意味着Struts2默认会根据请求的Accept头来决定返回哪...

    详谈 Jquery Ajax异步处理Json数据.

    在Ajax请求中,通过设置"dataType: 'json'"属性,可以指定服务器响应的数据类型为JSON格式,然后在回调函数中通过参数直接获取解析后的数据对象。 4. WebMethod与页面后台交互:在.NET框架中,[WebMethod]属性被...

    jQuery+json百度图表插件实现饼状图.zip

    4. 使用jQuery加载数据:在JavaScript文件中,通过$.getJSON或$.ajax方法获取json数据。如果json数据是本地的,可以使用$.getJSON;如果是远程的,则需使用$.ajax。 5. 初始化图表:在获取到数据后,调用百度图表的...

    jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解

    在上面的代码中,首先使用jQuery选择器选中页面中的textarea元素,并获取其中的文本值。然后使用json-viewer.js提供的jsonViewer方法,将JSON字符串解析为JavaScript对象,并展示出来。该方法的参数为解析后的...

    jQuery+ajax读取并解析XML文件的方法

    本文将详细介绍如何利用jQuery的ajax方法读取XML文件,并对数据进行解析处理的步骤和技巧。 首先,我们得了解什么是XML。XML(Extensible Markup Language,可扩展标记语言)是一种用于存储和传输数据的标记语言,...

    PHP实例开发源码—jQuery json搜索框输入提示示例.zip

    收到响应后,jQuery会解析JSON数据,并将结果显示在搜索框下方,形成一个下拉列表,供用户选择。 这个实例展示了前后端通信的基本流程,包括客户端的事件监听、Ajax请求、JSON数据的使用,以及服务器端的数据处理和...

    jQuery自动获取本地天气预报特效代码

    注册并获取API密钥后,我们可以使用jQuery的`$.ajax()`或`$.getJSON()`方法发送异步请求获取天气数据。示例代码如下: ```javascript $.ajax({ url: '...

    jQuery Ajax 全解析

    服务器端的响应应该是一个符合JSON格式的字符串,如 `{"r":"success"}`,以便客户端能够正确解析。 除了这些基本方法,`jQuery.ajax()` 提供了更全面的控制,包括自定义HTTP头、设置请求超时、处理错误以及使用各种...

    json所有需要的包,免费下载

    6. **Flex和ActionScript**:在Flex和ActionScript开发中,`flash.utils.parseJSON()`和`ObjectUtil.toString()`方法分别用于JSON解析和对象转JSON字符串。 7. **jQuery的$.getJSON()和$.ajax()**:在Web开发中,...

    jQuery 入门到精通

    2. JSON与jQuery:jQuery的`.ajax()`方法支持JSON数据类型,`dataType: 'json'`可以使服务器返回的数据自动解析为JavaScript对象。 3. 序列化与反序列化:`$.param()`可以将JavaScript对象转换为URL编码的字符串,...

    jQuery_Ajax_应用实例解析大全.doc

    `getJSON()`用于获取JSON格式的数据,而`getScript()`则用于加载并执行远程JavaScript文件。 总结起来,jQuery的Ajax功能极大地简化了前端开发中的数据交互,通过`load()`, `get()`, `post()`等方法,开发者可以...

    jQuery_Ajax全解析.doc

    8. **短路方法**:除了上述方法,jQuery还提供了一些简化的版本,如`.getScript()`用于加载并执行JavaScript脚本,`.getJSON()`用于获取JSON数据。 9. **异步和同步**:默认情况下,所有的jQuery AJAX请求都是异步...

    jQuery Ajax使用 全解析

    - jQuery.load()是一个高级的Ajax方法,允许将远程页面的HTML内容加载到指定的DOM元素中。 - 它可以附加选择器来指定加载的特定部分。 - 默认情况下,load方法通过GET请求数据,但如果提供了数据参数,则会自动...

    struts2向服务器返回json信息

    5. **前端处理**:在客户端(如JavaScript),你可以使用Ajax请求获取JSON数据,并解析以展示或进一步处理。例如,使用jQuery: ```javascript $.ajax({ url: 'your-action-url.json', type: 'POST', dataType...

Global site tag (gtag.js) - Google Analytics