首页 > 其他分享 >拂衣天气(微天气)-技术预研

拂衣天气(微天气)-技术预研

时间:2024-05-04 13:45:06浏览次数:19  
标签:程序 拂衣 微信 地图 天气 API 使用 预研

前言

俗话说:磨刀不误砍柴工。

我想做一个天气类别的小程序,以此进行全栈开发能力的试炼。我想这会是一个微信小程序、是一个可以正常使用的小程序,以Java进行服务端开发,以Mapbox实现天气数据可视化。

但是我是一个后端开发工程师,我不怎么会写页面,我特别的讨厌写CSS。我也没有接触过微信小程序开发,也仅仅知道过Mapbox可以实现好看的地图。所以我需要进行一定的预研,避免后期花费更大的精力用来调整本可以避免的问题。

下面是我计划实现的功能列表:

  • 利用网络接口获取数据(昨日天气、当前天气、预报天气)
  • 实现实时天气与预报数据查看
  • 紧急情况推送
  • 利用地图(mapbox)进行数据可视化
  • 天气分享(图片分享,页面分享
  • 常用地址
  • 消息推送
  • 个人信息
  • 登录授权
  • 应用Promise进行异步网络请求
  • 使用阿里巴巴矢量图标库作为图标数据源
  • echarts图标展示
  • 接入疫情数据?

预研对象

天气数据

天气数据需要是真实的、可用的。那么可以通过网络中提供的天气API进行获取。

通过一定的检索后,我选定了两个天气平台,分别是:和风天气、心知天气。

高德天气:大平台,但是目前服务类目比较少

彩云天气:免费接口几乎没有,收费又太贵

心知天气

心知天气试用版与开发者版开发产品几乎等同,且开发者版收费也不贵。最为关键的是,支持以经纬度方式进行天气查询。

心知天气价格方案

和风天气

几乎可以免费使用其提供的所有 API,且同样支持经纬度方式进行天气查询。

价格方案

商业版与开发版的区别

小结

对比了这两者,发现至少都需要注册为开发者之后,才可以较好的使用其服务。且两者的开发者认证均需要实名。

关于天气API的选择,我最终选择了和风天气,倒不是因为它可以免费使用。其实,刚开始的时候我更倾向于使用心知天气,因为它还可以直接查昨天的天气(和风对于历史天气的查询比较麻烦)。但是和风天气首页结合了地图进行可视化,而且还提供有APP可以使用(方便参考)。再加上,我想了想,其实我并没有迫切的需要知道昨天的天气情况。

其实最重要的原因在于:我先注册了心知天气(需要审核),过了半天后再去注册了和风天气(需要审核),但是最先通过审核的是和风天气(耗时大概也就半天左右,我是在春节期间注册的)。

前端技术

我并没有想要精通前端技术,但是我需要比较体系的了解一下前端技术,方便进行小程序开发。所以我在B站找了两门前端视频学习(粗略的刷了一遍):

H5+Javascript技术结构图

微信小程序

官方文档足以

Mapbox

这里存在一个遗憾,小程序原生并不支持使用如mapbox这样的第三方地图框架,初始想法是通过webview的方式使用mapbox,但是遗憾的是,webview并不对个人类型的小程序开放使用。

所以,退而求其次,选择腾讯地图(及其提供的样式)实现地图浏览。

关于小程序WebView的说明

UI

UI部分参考和风天气APP,以及WEUI

20220420232540

20220420232553

总结

  • 天气API使用和风天气(若有空余可考虑抽取一套统一的API,可组合或切换数据来源)
  • 地图使用腾讯地图(微信小程序解决方案,主要在于个性化样式的使用)
  • 基于自定义服务端实现天气代理以及小程序静默登录
  • UI参考和风天气APP实现

参考

说明

如有冒犯,我在这里先向您道歉,还请联系我进行处理

email: [email protected]

标签:程序,拂衣,微信,地图,天气,API,使用,预研
From: https://www.cnblogs.com/threadj/p/18172230

相关文章

  • 拂衣天气(微天气)-模型设计
    前言这是一个前后端分离的项目,后端使用Java进行开发,而前端通过微信小程序实现。功能结构可从上图得知,部分功能已去除:消息消息推送紧急情况推送用户个人中心模型设计用户信息(UserInfo)idLong主键oidStringOpenIDuidStringUnionIDnameString昵称pho......
  • 拂衣天气(微天气)-开发环境准备
    前言本文用于说明本次开发所使用的环境,以及环境的搭建过程。操作系统Windows10专业版其实我当时使用的操作系统的ArchLinux,开发完成后才又重装回Windows。现在又用回了[email protected]服务端服务端使用Java语言进行开发,项目构建使用Maven(Grad......
  • 拂衣天气(微天气)—行政区划数据(一)
    前言微天气程序中存在如下几个功能需要使用到行政区划数据:城市列表,需要支持城市搜索根据经纬度获区域(城市)的天气数据地图坐标拾取并获取所处区域(城市)信息,同时获取天气数据对于城市的天气数据,不使用和风天气的城市列表,而是自行维护,通过空间位置(经纬度)进行关联。对于城市位置......
  • 天气学
    天气学主要研究三方面内容:①揭示和发现大气环流、天气系统、天气过程等大气运动现象,综合归纳大气运动规律。②研究大气中不同尺度的天气系统的结构、发生、发展和移动等特征,各种天气系统之间的相互作用及大气环流和天气过程的演变等的物理机制。③研究天气预报方法。首先必须仔......
  • 数据可视化在天气方面能够为我们带来什么样的帮助?
    数据可视化在天气方面能够为我们带来极大的帮助。天气是人类生活中一个重要的因素,对于农业、交通、航空、能源等各个领域都有着重要的影响。而数据可视化技术通过将复杂的天气数据转化为直观、易懂的图表、图像或地图等形式,为我们提供了更深入、更全面的天气信息,帮助我们更好地理......
  • 《技术预研与产品预研实践》课程大纲
    【课程背景】现代企业的竞争,实质上就是企业创新能力的竞争。一个企业要想在市场中占有一席之地,就必须使得技术开发、产品研发、管理能力等方面在同行业中处于领先地位,而产品与技术的持续创新是达成这一目标的唯一手段。而技术创新和产品创新是研发型企业的最为重要的创新途径和......
  • 【内部项目预研】对信息分类进行探索
    分析输入信息的类别,目前是一个闭集、但是要按照开集的方式来进行分析;名称越乱越好,让系统自己来进行划分。必须首先考虑传统的方法;优先考虑数据结构的构建;强化监控机制的构建、首先进行认知和技术积累。一、数据情况找到了清华大学整理的关于体育的新闻,每篇一个新闻,第一行是标题,而......
  • 大数据设计基于Hadoop全国天气可视化分析系统
    一、项目介绍  全国天气可视化分析系统主要功能模块包括系统首页、轮播图、公告消息、资源管理(天气资讯、资讯分类)系统用户(管理员、普通用户)模块管理(天气信息、降水数据),采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设......
  • csdn博客自定义模块:显示实时天气、日历、随机语录代码
    目录1.样式说明2.效果展示3.代码下载1.样式说明vip会员或者博客专家可以自定义模块代码,比如我博客的样式,有这几部分组成:灯笼祝福(我这里是龙年快乐,可以自定义更改任何字)、滚动欢迎语(我这里是欢迎访问我的博客,可以自定义更改任何欢迎语)github链接、知乎链接、邮箱发......
  • Python实战:天气应用
    1.引言天气应用是现代生活中不可或缺的一部分,它可以帮助我们实时获取天气信息,合理安排出行和活动。通过Python实现天气应用,我们可以加深对编程语言的理解,同时也能够体会到编程带来的便利。2.环境准备在开始编写天气应用之前,我们需要准备以下环境:1)Python环境:确保计......