最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

【已解决】Flask中如何设计优惠码

Flask crifan 3113浏览 0评论

要设计一个后台,其中涉及到:优惠码

基本的逻辑是:

用户A发布T1任务,用户B抢单后

用户A在T1界面中,可以分享出一个优惠码P1

多次分享,也是同一个优惠码

然后这个优惠码:

在用户C去拿到后,去注册后发布任务中,可以输入P1 去验证,得之:

此验证码P1是否是有效的,如果有效,是优惠多少钱

然后用户C去发布任务T2时,最终提交时,

带上这个P1,服务器去判断:

如果有效,则优惠对应的钱

所以,先要去设计一个 优惠码系统

支持优惠码P,和任务T,唯一对应

且支持验证一个优惠码P是否有效:

返回:

无效:是无效的,还是过期了

    过期的话:服务器端,有个缓存时间,便于识别此优惠码是否在近期已过期了。

有效:优惠程度,多少钱

优惠码生成算法

算法 – 购物网站的优惠码,网站邀请码那一类的唯一字符串是怎么实现的? – SegmentFault

C2C网站生成优惠码可以用什么算法实现? – V2EX

如何才能生成一个唯一的随机数 – V2EX

ObjectId — MongoDB Manual 3.2

代金券码的生成标准请教 · Ruby China

uber优惠码的生成的规则是什么? – 互联网 – 知乎

php – 京东上生成100万张优惠券算法问题 – SegmentFault

求优惠券码生成和验证规则例如:689F-585E-B69A-181F-CSDN论坛-CSDN.NET-中国最大的IT技术社区

【总结】

对于优惠码:核心还是:

随机-》让别人无法破解

-》此处还是自己用随机字符串吧

大写字母:A到Z,26个

小写字母:a到z,26个

数字0-9:10个

一共:62个

如果6位,共有:62^6=56800235584=568亿

如果8位,共有:62^8=218340105584896=218万亿

比如首字母加上T,表示我此处和Task相关的优惠码:

如果7位,共有:62^7=3521614606208=3.5万亿

所以,足够用了。

都不需要判读是否重复。

转载请注明:在路上 » 【已解决】Flask中如何设计优惠码

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
89 queries in 0.201 seconds, using 22.24MB memory