天气信息查询案例| 学习笔记

简介: 快速学习天气信息查询案例。

开发者学堂课程【Ajax 前端开发入门与实战天气信息查询案例】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/595/detail/8554


天气信息查询案例

 

天气查询案例

接口地址如下:

地址htp:// cdn.weather.hao.360.cn/api weather_info.php
作用描述:获取天信息
请求类型:Get 请求
参数: app:hao360 固定参数
code: 城市的编号( 101010100北京,101020100上海,    101280101广州,101280601 深圳)
_jsonp: 回调函数名称
返回数据格式: jsonp 格式
返回字段说明: area 地区信息
pm25: pm2.5 数据

pubdate:数据发布日期

Pubdate:数据发布时间

time:时间戳

weather:天气信息

date:时间

day:白天

night:黑夜

dawn:黎明

地址接口是 jsonp 格式的接口,需要通过跨域的技术解决方案来获取相关的数据。

简单的通过浏览器进行一个接口地址的访问,打开浏览器输入地址后将相关的参数不全。

第二个参数 code,把参数进行拼接通过”&“拼接,code=101010100(北京城市的编码),除此之外还需要 _jsonp(决定回调函数名称,它的本质是由服务器返回一个函数调用)再进行拼接 _jsonp=abc,如下图表示:

回车后的结果如图得到一个数据,这个数据关于 abc 的一调用方法

image.png

如把 abc 改为 haha ,就是 haha 的调用方法,如图:

image.png

因此服务器就是通过 _jsonp 来得到 haha 这个字符串,将我们相关的数据信息以函数调用的方式传递给前端。

可以把上图的数据进行格式化,复制上图 _jsonp 格式字符串放到 Sublime 粘贴上去后按快捷键 Ctrl+Alt+O 可以把相关数据进行格式化,进行格式化要把最前面haha 去掉因为只有括号里面才是 _jsonp 格式字符串,

把特殊符号”\u5317\u4eac转译成中文“北京”。

在 Sublime 中按的快捷键需要安装 Pretty JSON 这个插件。

安装插件的步骤:

点击 Package Control 后再点击 Instali Package ,稍等片刻弹出一个输入框,在输入框中输入 Pretty JSON 进行安装。

第二种方式可以借助互联网,在百度搜索 json 数据格式化点击进去

复制代码粘贴进输入框点击校验也能得到 json 数据格式化的操作。

image.png

选择城市后点击查询按钮,就可以将天气信息查询出来,就可以展示在“info”的<div>下边。

打开浏览器输入 www.zhangsan.com。 

点击 08 weather/ 后进入

再点击 get weather.html 就会出现如下界面:

image.png

点击城市进行查询就可以获得相关天气信息,天气信息是分日期的,每个日期下面都有它的白天、夜间、黎明的信息。将这里的信息获得读取信息的获取操作。 

代码如下:

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>获取天气信息</title>

<script type="text/javascript" src=”jquery.js”>

</script>

<script type="text/javascript” src=”template.js”>

</script>

<script type="text/html” id=”weatherTemplate”>

{{each weather as value i}}

<div><span>

{{value.date}}

</span>

<ul><li>天天:{{value.info.day[1]}}</li>

<li>白温度:{{value.info.day[2]}}</li>

<li>白天:{{value.info.day[3]}}</li>

<li>白天风:{{value.info.day[4]}}</li>

</ul><ul><li>夜间天:{{value.info.night[1]}}</li>

<li>夜温度:{{value.info.night[2]}}</li>

<li>夜间风:{{value.info.night[3]}}</li>

<li>夜间风:{{value.info.night[4]}}</li>

</ul>

{{if value.info.dawn}}<ul><li>黎明:{{value.info.dawn[1]}}</li>

<li>黎明温度:{{value.info.dawn[2]}}</li>

<li>黎明:{{value.info.dawn[3]}}</li>

<li>黎明:{{value.info.dawn[4]}}</li>

</ul></div>

{{/each}}

</script> 

$(function(){

$(”#query”.click(function(){

//将用户所选择的城市信息的天气预报情况查询出来

var code = $("#city" ).val();

Console.log(code);

$.ajax({

Url:”htp:// cdn.weather.hao.360.cn/api weather_info.php

data:{

app:”hao360”,

code:code

},

jsonp:”_jsonp”

dateType:”jsonp”

success:function(data){

console.log(data);

var html = template(“weatherTemplate”,date);

$(“#info”).html(html);

}

});

});

});

<style type="text/css">

#containerfwidth:400px ;

min-height:300pх;

background-color:lightgreen;

margin:auto;

padding:10px;

text-align:center;}

ul{

list-style:none;

text-align:left;

}

</style>

</head><body>

<div id = ”container”>

<select id="city">

<option value="101010100">北京</option>

<option value="101020100">上海</option>

<option value="101280101">广州</option>

<option value="101280601">深圳</option>

</select>

<input type=”button” value=”查询” id=”query”>

<div id=”info”>

</div>

</div>

</body>

</html>

Val 代表的含义,他所代表的含义是我们所选择的 option 所对应的 value 值,option 所对应的 value 值就是 select 元素的 value 值

<select id="city">

<option value="101010100">北京</option>

<option value="101020100">上海</option>

<option value="101280101">广州</option>

<option value="101280601">深圳</option>

</select>

将 code 用户所选择的城市信息传递到 url 中城市所对应的天气。Url 的地址是在接口文档中所体现出来的地址。

放到代码当中,业务逻辑参数 hao360; 城市编码。

dataType 不能忘记,必须得是 jsonp 我们才可以获取到相关的数据

success:function(data){

console.log(data);

html 片段生成,片段生成放在 info下面

两个参数 dateType 一定要是 jsonp;

第二个就是 jsonp 所指定的值,我们服务器就是通过这个值来获取到回调函数的名称。

相关文章
|
2月前
|
API
天气预报15日-墨迹天气-地址查询版免费API接口教程
该接口提供15日天气预报服务,通过指定地址获取墨迹天气预报。支持POST或GET请求,需提供用户ID、KEY、省份名称及地点等参数。返回数据包括15天内每天的天气详情,如最高最低温度、天气变化及图标等。示例中使用的ID和KEY为公共测试账号,建议使用个人账号以获得更高调用频率。
|
2月前
|
API
天气预报15日-墨迹天气-IP查询版免费API接口教程
该接口提供基于指定IP地址的15日天气预报,支持POST和GET请求方式。请求需包含用户ID、KEY,可选填IP地址,默认查询访问者IP所在地天气,查询失败时默认返回北京天气。返回值包括状态码、地点及15天天气详情,如星期、日历、天气状况、温度范围及天气图标等。示例请求和响应详见文档。
135 48
|
2月前
|
XML 数据可视化 API
商品详情数据实战案例,API接口系列
淘宝商品详情数据在电商领域具有广泛的应用价值,而淘宝商品详情API接口则为开发者提供了获取这些数据的重要途径。通过合理利用这些接口和数据,可以提升业务效率、优化用户体验,为电商行业的发展注入新的活力。
|
2月前
|
JSON API 数据格式
携程API接口系列,酒店景点详情请求示例参考
携程API接口系列涵盖了酒店预订、机票预订、旅游度假产品预订、景点门票预订等多个领域,其中酒店和景点详情请求是较为常用的功能。以下提供酒店和景点详情请求的示例参考
|
4月前
用二维码收集信息时,在后台可以查看、统计哪些数据?
如果是用草料二维码平台搭建的二维码,前往后台,在表单列表中找到对应的表单,就能查看数据了,包括通过该表单收集到的所有明细数据、基于关联二维码的统计数据、填写该表单的填表人统计数据、基于表单组件的字段统计数据。
用二维码收集信息时,在后台可以查看、统计哪些数据?
|
3月前
|
数据采集
以“股票代码实时抓取股票信息”为例的爬虫案例
爬虫—根据股票代码实时抓取股票信息
131 0
|
8月前
|
开发工具
查询天气预报案例
这是一个关于如何查询天气预报的步骤指南,包括五个步骤:找到阿里云的天气服务、购买服务、获取AppCode和秘钥、参考SDK调用接口以及使用Hutool工具进行接口调用。提供了详细的操作截图和接口返回的示例数据。完整文档链接可在文中找到。
313 4
|
8月前
|
搜索推荐 前端开发 数据挖掘
拼多多根据ID取商品详情原数据 API 实现实时数据获取的完整指南
在电商行业中,商品详情页是用户了解商品信息、进行购买决策的重要页面。为了提高用户体验和促进销售,电商平台通常会提供商品详情的API接口,以便第三方应用能够实时获取商品数据。本文将介绍如何使用拼多多获得的根据ID取商品详情原数据的API实现实时数据获取,并提供相应的代码示例。
|
Python
python 进行西安2023年天气信息,分析天气趋势预测 数据代码评论区自取
python 进行西安2023年天气信息,分析天气趋势预测 数据代码评论区自取
82 0
|
小程序 安全 API
「教程」微信小程序获取经纬度查询天气预警信息
「教程」微信小程序获取经纬度查询天气预警信息
252 0