• 微信小程序 实现天气预报接入


    第一种方法:

            1、后台接入第三方平台获取最近的天气预报信息

             2、将数据返回给前端,此时返回信息的是最近所有的天气预报信息 例如(当前8月3号10点整 返回的会从当前8月3号10点整-8月5号10点整中间所有时间段的天气 注意返回的均是整点信息)

            3、获取当前时间戳,判别时间戳是否在返回的信息中,返回对应的天气信息

            4、小程序前端渲染需要以循环的方式取值,因为天气信息返回是一个二维对象

            出现问题

             1、后台返回的数据为整点时间段信息,而当前时间戳是具体时间段,所以这里在测试的时候,写了整点时间戳去测试数据。但是我们实际场景中,一定是以当前具体时间去获取数据。

            举例场景:后台返回来数据是8月3日10点的数据,我们可以在10点获取到数据后,但在10点01分就失去数据,因为当前时间戳不在返回的数据里面。

            预期效果:数据应该是保存一个小时,到了下个时间段自动刷新。

            解决思路:以时间日期的格式去判别。当前时间是在那个整点

             首先获取当前时间戳。将其转换成日期格式。小程序直接转换的格式是 年/月/日 时:分:秒

              而天气预报返回的日期格式是 年-月-日 时:分:秒:

            所以第二步 需要去util 文件里面封装一个重写时间日期格式函数文件,将我们的当前时间格式转换成于天气预报返回的日期格式一样

            第三步 比对时间数据 举例当前返回天气最新时间是 2022-8-3 10:00:00 我们的当前时间为 2022-8-3 10:30:00 我们只需要比对 (年-月-日 时)的数据一致就能获得数据   

    第二种方法

    1、后台接入第三平台。根据当前时间戳返回对应天气信息

    2、前端直接获取接口数据,进行渲染

    是不是第二种是实现更加的简便了。这里我尝试过着两种方案。在第一种花费了较多的时间。然后豁然开朗。其实完全就可以在后台判别一下就好了。所以贴出来。避免大家踩坑

    推荐使用第二种,第一种方法开发时候发现需要单独封装在util文件,只做一种场景的时候还是ok的,但是个人开发测试时候,出现了冲突,原因为我在做短信发送时候 延迟发送,也是需要时间戳,这里的时间函数重写之后。很难去解决。

                         

            

                    

  • 相关阅读:
    Flutter 知识集锦 | 监听与通知 ChangeNotifier
    javaee SpringMVC文件上传 项目结构
    乙二醇除铁离子
    用企业微信如何做私域运营?
    使用JLINK给GD32下载程序
    教师产假多少天
    hadoop 3.0节点管理
    分布式session ——Spring Session原理、实战解决 子域之间的 session 共享问题、不同服务器 session 共享解决方案
    【产品设计】APP提升用户注册率的五个方案探讨结论
    Java+SpringBoot+Vue自习室预约系统全栈开发
  • 原文地址:https://blog.csdn.net/SunNang/article/details/126135562