本文背景
本人运营一个抽奖类小程序已步入正轨,期间虽然也出过大大的问题,好在吃一堑长一智,现在一切都比较稳定,特别是在抽奖环节。
本文内容
本文依托我运营的小程序,来分享下在具体抽奖环节的逻辑是如何实现的
首先要说下目前小程序的实现机制,目前抽奖小程序主要有三步
(1)开~奖、所谓开奖就是将当前奖项根据时间,从未开奖,标记为可开奖状态
(2)抽~奖、所谓抽奖就是,在可开奖的奖项里面,根据当前奖项参与的用户,以及奖品设置,把具体的奖项给对应的某个参与用户
(3)推~送、所谓推送就是在开奖完成后,推送订阅消息给所有参与抽奖的用户
对应这三步,该小程序有三个核心的云函数
(1)run,触发器,每个整点的1分开始执行,具体逻辑是根据当前时间和开奖时间进行比较,如果当前时间大于开奖时间,那么标记状态位为可开奖
(2)draw,触发器,每个整点的5分开始执行,具体抽奖的逻辑,也是本文具体分享的环节
(3)sendmore,触发器,每个整点的10分开始执行,进行推送订阅消息
f
本文的重点是在上面的第二步
在具体实现抽奖的逻辑,本文分享两个,所谓抽奖无非就是根据奖项设置的奖品个数随机从参与用户那里选取两个用户,这里注意一个关键词,是随机
随机就代表公平,这是该小程序的核心
方法1、云函数的sample
这个是云开发里面提供的随机检索的函数,小程序云开发支持
方法2、第三方库的suffle
本文总结
本文通过分享抽奖类小程序核心逻辑场景,然后给出具体抽奖环节的解决方案以及具体代码
这个敏感字最终找到了,就是开奖
挂个前排
由于原文在创作时,有敏感字多次修改才通过,所以格式有些乱
本文背景
本人运营一个抽奖类小程序已步入正轨,期间虽然也出过大大的问题,好在吃一堑长一智,现在一切都比较稳定,特别是在抽奖环节。
本文内容
本文依托我运营的小程序,来分享下在具体抽奖环节的逻辑是如何实现的
首先要说下目前小程序的实现机制,目前抽奖小程序主要有三步
(1)开,所谓开奖就是将当前奖项根据时间,从未开奖,标记为可开奖状态
(2)抽,所谓抽奖就是,在可开奖的奖项里面,根据当前奖项参与的用户,已经奖品设置,把具体的奖项给对应的某个参与用户
(3)推,所谓推送就是在抽奖完成后,推送订阅消息给所有参与抽奖的用户
对应这三步,该小程序有三个核心的云函数
(1)run,触发器,每个整点的1分开始执行,具体逻辑是根据当前时间和开奖时间进行比较,如果当前时间大于开奖时间,那么标记状态位为可开奖
(2)draw,触发器,每个整点的5分开始执行,具体抽奖的逻辑,也是本文具体分享的环节
(3)sendmore,触发器,每个整点的10分开始执行,进行推送订阅消息
本文的重点是在上面的第二步
在具体实现抽奖的逻辑,本文分享两个,所谓抽奖无非就是根据奖项设置的奖品个数随机从参与用户那里选取两个用户,这里注意一个关键词,是随机
随机就代表公平,这是该小程序的核心
方法1、云函数的sample
这个是云开发里面提供的随机检索的函数,小程序云开发支持
方法2、第三方库的suffle
http://underscorejs.org/
f
本文总结
本文通过分享抽奖类小程序核心逻辑场景,然后给出具体抽奖环节的解决方案以及具体代码