苦于 v2 没有好用的抽奖方式,自己 vibe 了一个简单好用的

dushixiang 2026-08-28 22:22 1

Github: https://github.com/dushixiang/v2ex_luck


在线体验: https://v2ex-luck.termark.app


使用也很简单,主题 ID ,中间人数,开奖时间写一下就完事了,具体的抽奖算法在 GitHub 仓库里面有写。


先用我另外一个抽奖贴试试水,大家感兴趣的可以参与一下,赠送 10 个我开发的一款全平台 SSH 客户端 2 年半时长 PRO 会员资格 : https://v2ex.com/t/1237911


最新回复 (1)
  • dushixiang 楼主 08-28 22:47
    1
    补充一下工作方式

    1. 创建者输入主题 ID 、回复截止时间、中奖人数和过滤规则。
    2. 程序选择截止时间之后的第一个 drand quicknet 轮次,并把完整配置编码进 URL 的 `#draw=` 部分。
    3. 截止前页面只显示倒计时、规则和目标轮次。
    4. 截止后,官方 `drand-client` 获取目标轮次并验证 BLS 签名。
    5. 程序通过 Worker 一次读取该主题的全部 V2EX 回复,只保留 `reply.created <= drawAt` 的回复;拿到已验证的 drand 信标后会自动再刷新一次回复列表,避免时钟偏差或边缘缓存造成快照不完整。
    6. 每位候选人得到一个确定性的 HMAC-SHA-256 评分;按评分升序取前 N 名。
    7. 页面公开所有中间哈希,并允许下载验证文件。
* 帖子来源V2EX
返回