激励广告服务端校验

服务端验证说明

当选择需要服务端验证时,开发者需要在开发者平台上填写回调 URL。服务端回调是指在用户看完视频达到奖励条件时,服务端会向开发者服务端发送一个验证请求,同时客户端会给出 onReward 回调,开发者根据回调进行奖励发放,因为奖励回调和服务端验证请求是同时发送的,开发者后台收到验证请求可能会有延迟或网络原因上的失败,开发者需要平衡用户体验与奖励验证。

配置回调地址

  1. 打开应用管理,编辑应用

应用管理

  1. 填写回调地址,保存应用(密钥为签名用到的secret)

配置回调地址

服务端回调说明

服务器会以 GET 方式请求第三方服务的回调链接,并拼接以下参数回传:

pid=%s&appid=%s&transid=%s&userid=%s&extrainfo=%s&is_brush_after=%d&sign=%s
字段定义字段名称字段类型备注
pid广告位IDstring广告位ID
appidAPP IDstring媒体ID
transid交易idstring完成观看的唯一标识
userid用户idstring调用sdk透传,应用对用户的唯一标识,sdk中onZjAdReward回调返回的参数
extrainfo其他信息string调用SDK传入并透传,如无需要则为空
is_brush_after接口版本int1->新版本
sign签名string签名

签名生成方式:

sign = sha256('transid' + 'secret')
  • transid: 交易id
  • secret: 开发者平台输入服务端URL时获取到的密钥
示例代码
import hashlib

tradeId = "aaabbbcccddd"
secret = "ZZZXXXCCCVVV"

hash_object = hashlib.sha256((tradeId + secret).encode('utf-8'))
hash_hex = hash_object.hexdigest()

# 输出"SIGN: f8d7943dad6d37a13a7e02392b5f6e37439509eb05f76d060904463dd96df5a2"
print(f"SIGN: {hash_hex}")

返回约定

返回 json 数据,字段如下:

字段定义字段名称字段类型备注
isValid校验结果BOOL判定结果,是否发放奖励

回调URL格式示例如下:

{ 
   "isValid": true
}