热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

jQuery教程分享使用$.getjson从externel源请求JSON。200成功但它在哪里?

我正试图从openweathermap获取天气数据。这个url适用于我输入的坐标,当我在浏览器栏中输入url时,我可以下载JSON。我正试图在我的页面中使用它。当我运行此代码时,在

我正试图从openweathermap获取天气数据。 这个url适用于我输入的坐标,当我在浏览器栏中输入url时,我可以下载JSON。 我正试图在我的页面中使用它。 当我运行此代码时,在Firebug中我可以看到HTTP请求获得了200个成功代码,但由于某种原因它不会打印响应。 我没有正确使用getJSON吗?

var url = "http://api.openweathermap.org/data/2.5/forecast?lat="+ position.coords.latitude +"&lon=" + position.coords.longitude; $.getJSON(url, function(res) { console.log(res); }); 

    您正在尝试在读取JSONP的函数中读取跨域JSON。 跨域JSON读取是不可能的。

    改为尝试JSONP请求;通过附加回调

      var url = "http://api.openweathermap.org/data/2.5/forecast?lat=" + position.coords.latitude +"&lon=" + position.coords.longitude + "&callback=?" ; $.getJSON(url, function(res) { console.log(res); }); 

    JSON响应是这样的: { 'a':22 }

    JSONP响应类似于: myFunction({'a':22} ) ,其中myFunction是作为callback传递的值

    jQuery不需要回调函数的名称,但是需要在URL中提及callback ,以便它可以将其标识为JSONP请求。

    JSONP

    如果URL包含字符串“callback =?” (或类似的,由服务器端API定义),请求被视为JSONP。 有关更多详细信息,请参阅$ .ajax()中有关jsonp数据类型的讨论。

    追加这个?callback=? 到url,再试一次:

     $.getJSON(url + '?callback=?', function(res) { console.log(res); }); 

    试试这个

      function buildQuery() { var str = "http://api.openweathermap.org/data/2.5/forecast?lat=27.175009&lon=78.041849"; return "select * from json where url ='" + str + "' "; } $.ajax({ url: 'http://query.yahooapis.com/v1/public/yql', data: { q: buildQuery(), format: "json" }, dataType: "jsonp", success: function (data) { alert(JSON.stringify(data)); }, error: function (data) { consol.log(data); } }); 

    工作演示: –

      以上就是jQuery教程分享使用$ .getjson从externel源请求JSON。 200成功但它在哪里?相关内容,想了解更多jQuery开发(异常处理)及jQuery教程关注(编程笔记)。


      推荐阅读
      • from:http:www.myquickphp.comarchives147(请求的跨域服务器不支持常规”?”查询请求时的解决方案)昨天第一次做VIP需求时,发现一 ... [详细]
      • 本文介绍了Java后台Jsonp处理方法及其应用场景。首先解释了Jsonp是一个非官方的协议,它允许在服务器端通过Script tags返回至客户端,并通过javascript callback的形式实现跨域访问。然后介绍了JSON系统开发方法,它是一种面向数据结构的分析和设计方法,以活动为中心,将一连串的活动顺序组合成一个完整的工作进程。接着给出了一个客户端示例代码,使用了jQuery的ajax方法请求一个Jsonp数据。 ... [详细]
      • 使用nodejs爬取b站番剧数据,计算最佳追番推荐
        本文介绍了如何使用nodejs爬取b站番剧数据,并通过计算得出最佳追番推荐。通过调用相关接口获取番剧数据和评分数据,以及使用相应的算法进行计算。该方法可以帮助用户找到适合自己的番剧进行观看。 ... [详细]
      • 如何查询zone下的表的信息
        本文介绍了如何通过TcaplusDB知识库查询zone下的表的信息。包括请求地址、GET请求参数说明、返回参数说明等内容。通过curl方法发起请求,并提供了请求示例。 ... [详细]
      • 模板引擎StringTemplate的使用方法和特点
        本文介绍了模板引擎StringTemplate的使用方法和特点,包括强制Model和View的分离、Lazy-Evaluation、Recursive enable等。同时,还介绍了StringTemplate语法中的属性和普通字符的使用方法,并提供了向模板填充属性的示例代码。 ... [详细]
      • 本文介绍了如何使用JSONObiect和Gson相关方法实现json数据与kotlin对象的相互转换。首先解释了JSON的概念和数据格式,然后详细介绍了相关API,包括JSONObject和Gson的使用方法。接着讲解了如何将json格式的字符串转换为kotlin对象或List,以及如何将kotlin对象转换为json字符串。最后提到了使用Map封装json对象的特殊情况。文章还对JSON和XML进行了比较,指出了JSON的优势和缺点。 ... [详细]
      • 图像因存在错误而无法显示 ... [详细]
      • 本文介绍了一个React Native新手在尝试将数据发布到服务器时遇到的问题,以及他的React Native代码和服务器端代码。他使用fetch方法将数据发送到服务器,但无法在服务器端读取/获取发布的数据。 ... [详细]
      • Android实战——jsoup实现网络爬虫,糗事百科项目的起步
        本文介绍了Android实战中使用jsoup实现网络爬虫的方法,以糗事百科项目为例。对于初学者来说,数据源的缺乏是做项目的最大烦恼之一。本文讲述了如何使用网络爬虫获取数据,并以糗事百科作为练手项目。同时,提到了使用jsoup需要结合前端基础知识,以及如果学过JS的话可以更轻松地使用该框架。 ... [详细]
      • Jquery 跨域问题
        为什么80%的码农都做不了架构师?JQuery1.2后getJSON方法支持跨域读取json数据,原理是利用一个叫做jsonp的概念。当然 ... [详细]
      • Spring源码解密之默认标签的解析方式分析
        本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
      • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
      • 开发笔记:加密&json&StringIO模块&BytesIO模块
        篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
      • 凡客诚品官方网站的前端改进建议
        打开http:www.vancl.com发现采用的Asp.net,这点我感到很欣慰,毕竟国内采用.net技术体系的优秀网站少之又少。好奇之余右键-查看源 ... [详细]
      • http会话(session)详解by:授客QQ:1033553122会话(session)是一种持久网络协议,在用户(或用户代理)端和服务器端之间创建关联,从而起到交换数据包的作 ... [详细]
      author-avatar
      手机用户2502910165
      这个家伙很懒,什么也没留下!
      PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
      Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有