# 获取玩家参与免费赠送活动信息 ## 描述 > 使用这种方法,娱乐场运营商系统可以从系统获得所有玩家能够参与的活动。 > 请求方式( Host-> BeSoft):post > 编码方式:application/x-www-form-urlencoded > Besoft响应的数据格式是: application/json ## 网址 ``` {besoftapi}/api/bonus/getplayerfrb ``` ## 哈希计算 哈希代码通过以下步骤来计算: 从请求 POST参数获取所有参数(预期哈希)并附加到字符串: - 1.按字母表顺序对所有参数排序。 - 2.在 key1=value1&key2=value2 中附加它们(如果值不为空) - 3.附加密钥,即: ``` key1=value1&key2=value&hashkey=3m@K#9zPxL$%Yb*8C ``` - 4.使用 MD5 计算哈希,转为全部大写。 - 5.用"hash"为名字附加到参数中,代替hashkey字段,最终参数为: ``` key1=value1&key2=value&hash=3E8ABC6949A0A0CFF9110CF1128FBE25 ``` - 6.如果平台与哈希参数对比失败。发送错误代码1008。 ## 请求参数 | 名称 | 类型 | 必要 | 描述 | | :--------: | :---------: | :--: | :--------------------------: | | extension1 | string | Y | 代理账号 | | cert | string | Y | 安全代码 | | bonuscode | String(128) | Y | 运营商系统中的奖励唯一标识符 | | userid | int64 | Y | 玩家ID | | hash | string | Y | 请求的哈希代码 | ## 示例 - URL: - http://127.0.0.1:8000/api/bonus/getplayerfrb - HTTP Method - POST - 表单数据 > Content-Type: application/x-www-form-urlencoded ``` extension1: adminweb cert: v8VMKKzlPpD0te4rX99Hgefs3PQrBFWJKiuUqg6Y bonuscode: aaabbbccc userid: 81564564 hash: 165BB0FEEB254154DE1AEF36E7ED48C2 ``` ## 返回结果 | 名称 | 类型 | 描述 | | :---------------: | :----: | :----------------: | | bonuses | array | 活动列表 | | bonuses.currency | string | 货币符号 | | bonuses.bonuscode | string | 活动唯一ID | | bonuses.gidlist | string | 能够参与的游戏列表 | | bonuses.round | int | 赠送的免费旋转次数 | | bonuses.enddata | int64 | 活动结束日期 | ### 成功的结果 ``` { "bonuses": [ { "currency": "USD", "bonuscode": "aaabbbccc", "gidlist": "be001,be022,be002,afa013,afa014,afa019", "round": 11, "enddata": 1752052214512 } ], "code": 0, "msg": "success" } ``` ### 失败的结果 ``` { "ret": 1008, "info": "param erro" } ```