前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微信小程序云开发增加定时任务

微信小程序云开发增加定时任务

作者头像
青年码农
修改2021-09-02 18:35:19
2.5K1
修改2021-09-02 18:35:19
举报
文章被收录于专栏:青年码农

之前业余时间,开发了一个微信小程序【时间胶囊】,其中有个功能是用户在发布胶囊的时候,会要求用户订阅消息,云开发后台定时轮询,满足条件,触发云函数,将消息推送给用户。这个功能用到了小程序的定时触发器。

官方文档写的也比较清楚,用法简单,首先,我们要有云函数,或者说你新建云函数,新建完成之后会生成config.json、index.js、package.json,index.js这个文件云函数的主文件,所有的逻辑都写在这里面,package.json项目依赖清档,这里我们用不到,config.json这个文件是本文用到的,如果你在生成云函数的时候没有生成config.json文件,可以手动创建。

上面图片目录下文件多出来的几个是由于我使用了云函数本地调试,云函数我们就正常开发即可,这个定时任务最后加是没问题的。

1. name

之前在小程序社区看到有人说,这个name要和云函数的名字保持一致,这个是不需要的,只要保证这个名字和其它的定时任务的名字不一致即可,

2. type

代码语言:javascript
复制
type: 触发器类型,目前仅支持 timer (即 定时触发器)

3. config

Cron 表达式,这个要是想了解的话,去小程序文档中查看吧,写的很详细,这里我们就简单写几种。

代码语言:javascript
复制
## 表示每5秒触发一次
*/5 * * * * * *       
## 表示在每月的1日的凌晨2点触发
0 0 2 1 * * *      
## 表示在周一到周五每天上午10:15触发
0 15 10 * * MON-FRI *      
## 表示在每天上午10点,下午2点,4点触发
0 0 10,14,16 * * * *      
## 表示在每天上午9点到下午5点内每半小时触发
0 */30 9-17 * * * *     
## 表示在每个星期三中午12点触发
0 0 12 * * WED *     

配置完了不代表就已经可以用了,需要上传触发器,config.json文件,右击选择上传触发器。这个和你当前的环境有关,切换环境后还需要重新上传。此时已经可以根据你设置的规则触发了。

你以为这就完了?

测试下来你会发现,本地测试始终是好的,但是当发布或者预览,是一定有问题的,因为你漏看了下面的。

云函数中的时区为 UTC+0,不是 UTC+8,而触发器的规则时区是UTC+8,这就会导致,始终是差8个小时。因此需要配置函数的环境变量,设置 TZ 为 asia/shanghai。

如果你小程序有多个环境,每个环境都需配置。这操作下来,基本就没问题了,就可以愉快的玩耍了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-08-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 青年码农 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Cron 表达式,这个要是想了解的话,去小程序文档中查看吧,写的很详细,这里我们就简单写几种。
相关产品与服务
云函数
云函数(Serverless Cloud Function,SCF)是腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码。您只需使用平台支持的语言编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。云函数是实时文件处理和数据处理等场景下理想的计算平台。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档