Skip to content

执行抽奖接口

概述

执行抽奖接口用于在用户发起抽奖时,完成积分扣减并返回中奖结果

  • 调用方:小程序前端
  • 请求方式POST
  • 请求路径/lottery/draw
  • 请求头要求AuthorizationX-Idempotency-Key

接口用途

扣减用户积分,并返回本次抽奖的中奖结果与最新积分。

请求参数

参数类型必填说明
activityIdstring活动 ID,首期单活动场景下可选

返回参数

参数类型说明
recordIdstring抽奖记录 ID
prizeobject中奖奖品
currentPointsint抽奖后积分

prize 对象示例

参数类型说明
prizeIdstring奖品 ID
prizeNamestring奖品名称

成功示例

{"code":"0","message":"ok","data":{"recordId":"lr_1","prize":{"prizeId":"p1","prizeName":"20积分"},"currentPoints":130}}

失败示例

错误码

错误码说明
A0001通用请求异常
B1003当前积分不足,请先获取更多积分
A0004幂等或重复请求相关异常

约束与规则

幂等要求

  • 要求幂等
  • 同一 X-Idempotency-Key 只允许产生一次结果

前后端同步规则

接口调用成功后,前端需要同步更新:

  • 用户积分
  • 中奖结果页
  • 消息未读数

缓存策略

  • 不缓存

一致性要求

  • 强一致

实施要点

  1. 前端调用时必须传递 AuthorizationX-Idempotency-Key
  2. 服务端需保证积分扣减与抽奖结果返回的原子性/一致性。
  3. 对重复请求应基于幂等键返回同一结果,避免重复扣减积分。
  4. 成功响应后,前端应立即刷新积分与抽奖相关展示状态。

谷子科技知识库平台 - 多格式摄入、受控编译、岗位隔离问答