# 4、任务领奖通知
用户领取完成后,平台会把相关领取结果及用户信息通过数据流post的形式发送给媒体,媒体需要接收处理,并按文档规范返回应答。平台发奖此接口可忽略
可以在渠道后台查看是否回调成功。 开发完以后,需自行配置到媒体后台(保存),可在媒体后台进行测试,媒体后台-->应用--->配置--->应用赚配置--->点我测试
注意:target_id,app_key可根据实际情况进行填写,如果点击测试显示"系统异常",请先检查请求方式是否为post以及接收数据的方式是否为form类型,返回类型一定要为json对象。
# 请求方式
post
# 特别提醒(重要):
1.同样的通知可能会多次发送给媒体系统(服务器网络抖动,第一次回调平台没有收到code:200的反馈,但是已经给用户发奖成功,所以会二次回调)。如有重复回调,媒体务必做出正确处理,即返回{"code":200};
2.媒体系统对于领取结果通知的内容一定要做签名验证,防止数据泄漏导致出现“假通知”,造成资金损失。
3.当收到通知进行处理时,首先检查对应业务数据的状态,判断该通知是否已经处理过,如果没有处理过再进行处理,如果处理过直接返回结果成功(返回值为 {"code":200})。在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱。
4.回调处理成功后返回值为 {"code":200}。无返回值或者非200,则认为回调出现异常,会再次进行回调。
# 接口链接
通知url必须为直接可访问的url,不能携带参数。示例:notify_url:"https://pay.xxxxx.com/xxxxx/pay.action"
当接口调用失败后,平台会在5秒,10秒 ,30秒,1分,2分,3分,4分, 5分, 6分,7分,8分,9分,10分, 20分,30分,1小时,2小时分别请求回调接口一直到接口请求成功。
# 通知参数(formData)
{
"sign": "A67AA5150636F166D653A8643FD3E3A2", //签名
"target_id": "142792766", //媒体方用户id
"app_reward": "0.70", //给媒体方的奖励
"user_reward": "0.56", //媒体方给用户发放的奖励
"content": "应用赚任务-c12", //任务名称
"unit": "元", //媒体方计价单位
"app_key": "142792766", //媒体appKey
"device_info": "B49B363F-F0CF-4B9C-8F00-67A94196E646", //用户设备信息
"time_end": "20200828150316", //领取完成时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010
"device": "ios", //设备 ios,安卓
"order_id": 4624 //平台所有项目唯一订单号,媒体方排重用
}
# 签名规则
sign = MD5(app_key+device+device_info+target_id+app_secret) .toUpperCase,密钥渠道后台可以取到(媒体后台-->应用--->编辑)
签名必须为md5后的值大写。
app_key及app_secret获取引导(后台的地址、用户名、密码请联系商务获取)
