激活数据打点
<p>[TOC]</p>
<h3>1、【激活数据打点】接口说明</h3>
<pre><code>调用该接口进行激活数据上报</code></pre>
<h5>请求URL</h5>
<ul>
<li>测试服:<a href="https://graph-test.llewan.com/v2/LogHandle/activeLog">https://graph-test.llewan.com/v2/LogHandle/activeLog</a></li>
<li>正式服:<a href="https://graph.llewan.com/v2/LogHandle/activeLog">https://graph.llewan.com/v2/LogHandle/activeLog</a></li>
</ul>
<h5>请求方式</h5>
<ul>
<li>POST </li>
</ul>
<h5>请求参数</h5>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">必选</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">tmp_uid</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>设备标识,uuid/IDFA</td>
</tr>
<tr>
<td style="text-align: left;">platform</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>操作系统标识:ios/android</td>
</tr>
<tr>
<td style="text-align: left;">client</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>端类型:h5/ios_apk/android_apk</td>
</tr>
<tr>
<td style="text-align: left;">sign</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>签名,生成方式见签名规则说明</td>
</tr>
</tbody>
</table>
<h5>响应参数</h5>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">必选</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">integer</td>
<td>请求状态码,1成功,-1失败</td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>响应补充信息</td>
</tr>
<tr>
<td style="text-align: left;">d</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">array</td>
<td>响应数据主体</td>
</tr>
</tbody>
</table>
<h5>返回示例</h5>
<pre><code>// 成功
{
&quot;code&quot;: 1,
&quot;msg&quot;: &quot;success&quot;,
&quot;d&quot;: []
}
// 异常
{&quot;code&quot;: -1, &quot;msg&quot;: &quot;param error&quot;} // 参数错误,缺少请求参数
</code></pre>
<h5>签名方式说明</h5>
<ul>
<li><strong>参与签名字段说明</strong>
接口请求参数除sign以外,其余参数都需要参与签名</li>
<li><strong>签名规则</strong>
1、签名串规则:所有参与签名的参数,按参数名(key)字典序升序排序,以key=value格式,并用【&】连接组成签名串,最后连接签名秘钥
2、对签名串进行MD5加密得到签名(32位小写字符串),PHP示例如下:</li>
</ul>
<pre><code>&lt;?php
function getSign($params, $secret)
{
//剔除sign字段
if (isset($params['sign'])) unset($params['sign']);
//对数组按key升序排序
ksort($params);
//拼接签名串
$formatStr = '';
foreach ($params as $key =&gt; $v) {
$formatStr .= $key . '=' . $v . '&amp;';
}
return md5(substr($formatStr, 0, -1) . $secret);
}
$secret = 'abc'; //签名秘钥
$params = [
'game' =&gt; 'aaa-weixin',
'role_id' =&gt; '1520001',
'server_id' =&gt; '10001',
'user_name' =&gt; '昵称',
...
]; //请求参数
$sign = getSign($params, $secret); //签名
</code></pre>