文档章节

Java WEB天气预报功能实现

七爹
 七爹
发布于 2015/04/21 15:17
字数 337
阅读 81
收藏 0

一、JS中根据HTML5提供的Geolocation定位获取当前位置的经纬度。

if (navigator.geolocation){

        navigator.geolocation.getCurrentPosition(function(position){

        var lat = position.coords.latitude; 

      var lng = position.coords.longitude;

        });

 } else{

     alert( "Your browser does not support Geolocation!" );

}


二、使用百度车联网(http://developer.baidu.com/map/wiki/index.php?title=car/api)提供的api接口,需要先注册百度开发者账号:http://developer.baidu.com/,注册过程省略。审核通过后,就可以创建应用获取密钥AK了,密钥AK会在接下来接口调用中使用。

三、服务器端根据百度提供的车联网api:“反Geocoding”接口由经纬度定位到城市

http://api.map.baidu.com/geocoder/v2/?ak=A72e372de05e63c8740b2622d0ed8ab1&location=29.78545893326,121.53783481355&output=json

四、再根据其“天气查询”接口查询对应城市天气。

http://api.map.baidu.com/telematics/v3/weather?location=杭州市&output=json&ak=A72e372de05e63c8740b2622d0ed8ab1

由于百度说明:天气API无法提供超过5000次的天气服务免费支持。所以暂时将城市和对应的城市天气信息保存在redis中,并设置过期时间,这样既可以保证向百度请求接口次数不会超过,有基本准确的时间信息,又不需要去维护这部分数据。


© 著作权归作者所有

共有 人打赏支持
七爹
粉丝 1
博文 8
码字总数 4080
作品 0
宁波
程序员
私信 提问
AEAI WX 微信扩展框架 V1.0 版本发版说明

AEAI WX 微信扩展框架是基于 Java 封装的微信公众号二次开发框架,基于该框架可以快速接入微信,实现自定义菜单创建、信息按规则自动回复、集成企业的线上系 统(HR、CRM、微店、网站等)、同...

数通畅联
2015/05/08
0
0
浅谈Java SE、Java EE、Java ME三者的区别

现在一个个来分析 1. Java SE(Java Platform,Standard Edition)。Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了...

空天啸鹤
2015/08/07
0
0
Java程序员必读书单,家族又添新成员

点击关注异步图书,置顶公众号 每天与你分享IT好书 技术干货 职场知识 参与文末话题讨论,每日赠送异步图书。 ——异步小编 有些革命出其不意地吸引了全世界的眼球。Twitter、Linux操作系统和...

异步社区
05/09
0
0
说说在 Spring AOP 中如何实现类加载期织入(LTW)

我们可以在类加载期通过字节码编辑技术将切面织入目标类,这种方式叫做 LTW(Load Time Weaving)。 AspectJ LTW 使用 Java 5.0 提供的代理功能实现织入工作 。JDK 的代理功能能够让代理器访...

deniro
08/24
0
0
初识TomCat之1——Java体系理解

一、前言 TomCat作为一款由Java语言所开发的Web Container,在很多应用场景中经常遇到,其特点也符合Java语言“一次编译到处使用”的优势,在介绍TomCat之前,首先需要对Java的技术体系有一定...

qiao645
06/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

探索802.11ax

802.11ax承诺在真实条件下改善峰值性能和最差情况。 如何改善今天的Wi-Fi? 在决定如何改进当前版本以外的Wi-Fi时,802.11ac,IEEE和Wi-Fi联盟调查了Wi-Fi部署和行为,以确定更广泛使用的障碍...

linuxprobe16
17分钟前
1
0
使用linux将64G的SDCARD格式化为FAT32

一、命令如下: sudo fdisk -lsudo mkfs.vfat /dev/sda -Isudo fdisk /dev/sda Welcome to fdisk (util-linux 2.29.2). Changes will remain in memory only, until you decide to wri......

mbzhong
55分钟前
4
0
深入理解Plasma(四):Plasma Cash

这一系列文章将围绕以太坊的二层扩容框架,介绍其基本运行原理,具体操作细节,安全性讨论以及未来研究方向等。本篇文章主要介绍在 Plasma 框架下的项目 Plasma Cash。 深入理解Plasma(1):...

HiBlock
昨天
1
0
命令参数的三大风格:Posix、BSD、GNU

今天读到命令行中参数的风格有三大类,即Unix/Posix、BSD、GNU。分别有以下特征: Unix/Posix风格,即命令后的参数,可以分组,便必须以连字符开头,如ps -aux。 BSD风格,即命令后的参数,可...

大别阿郎
昨天
2
0
PHP生成图片验证码

PHP生成图片验证码 /** * PHP生成图片验证码 * Class VerifyImage */class VerifyImage{ // 生成随机字串 private $verifyCode; // 图片对象 private $image; /**...

DrChenXX
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部