QQ登录
<p><strong>简要描述:</strong></p>
<ul>
<li>使用QQ登录</li>
</ul>
<p><strong>请求URL:</strong></p>
<ul>
<li><code>/api/v1/user/login/qq</code></li>
</ul>
<p><strong>请求方式:</strong></p>
<ul>
<li>POST</li>
</ul>
<p><strong>参数:</strong></p>
<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;">app_id</td>
<td style="text-align: left;">必选</td>
<td style="text-align: left;">string</td>
<td>QQ app_id</td>
</tr>
<tr>
<td style="text-align: left;">token</td>
<td style="text-align: left;">必选</td>
<td style="text-align: left;">string</td>
<td>QQ授权后获得的token</td>
</tr>
<tr>
<td style="text-align: left;">source</td>
<td style="text-align: left;">必选</td>
<td style="text-align: left;">string</td>
<td>渠道号</td>
</tr>
<tr>
<td style="text-align: left;">uuid</td>
<td style="text-align: left;">必选</td>
<td style="text-align: left;">string</td>
<td>设备码, 设备唯一标识</td>
</tr>
<tr>
<td style="text-align: left;">uuid_type</td>
<td style="text-align: left;">必选</td>
<td style="text-align: left;">string</td>
<td>设备码类型, 目前支持 <code>imei</code> <code>oaid</code> <code>idfa</code></td>
</tr>
</tbody>
</table>
<p><strong>返回示例</strong></p>
<pre><code>{
&quot;code&quot;: 0,
&quot;message&quot;: &quot;&quot;,
&quot;data&quot;: {
&quot;session&quot;: &quot;36|N9bpfmTI8gQjCeMdwnxcKDuXPgMigZhhMLqa5Ljt&quot;,
&quot;server&quot;: [&quot;62.64.102.62:32701&quot;, &quot;48.181.2.238:32701&quot;],
&quot;account&quot;: {
&quot;register_at&quot;: &quot;2021-09-24 19:06:41&quot;,
&quot;destroy_effect_at&quot;: &quot;2022-09-24 19:06:41&quot;,
&quot;flag_bit&quot;: 40,
&quot;third_exchange_enabled&quot;: false
}
}
}</code></pre>
<p><strong>返回参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">session</td>
<td style="text-align: left;">string</td>
<td>session</td>
</tr>
<tr>
<td style="text-align: left;">server</td>
<td style="text-align: left;">array</td>
<td>服务端本次连接IP组, IP经过加密</td>
</tr>
<tr>
<td style="text-align: left;">account.destroy_effect_at</td>
<td style="text-align: left;">string</td>
<td>用户注销生效时间, 不为空时可以发起取消注销申请</td>
</tr>
<tr>
<td style="text-align: left;">account.third_exchange_enabled</td>
<td style="text-align: left;">bool</td>
<td>三方商城是否启用</td>
</tr>
<tr>
<td style="text-align: left;">account.flag_bit</td>
<td style="text-align: left;">int</td>
<td>用户标签, 按位存储的数据, 假设用户同时拥有<code>锁定</code>和<code>羊毛党</code>标签, 值将是<code>5</code>, 详情见下表</td>
</tr>
</tbody>
</table>
<table>
<thead>
<tr>
<th style="text-align: left;">flag_bit</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">0</td>
<td>-</td>
</tr>
<tr>
<td style="text-align: left;">1</td>
<td>锁定</td>
</tr>
<tr>
<td style="text-align: left;">2</td>
<td>GM内部号</td>
</tr>
<tr>
<td style="text-align: left;">4</td>
<td>羊毛党</td>
</tr>
<tr>
<td style="text-align: left;">8</td>
<td>小号</td>
</tr>
<tr>
<td style="text-align: left;">16</td>
<td>关注</td>
</tr>
<tr>
<td style="text-align: left;">32</td>
<td>投诉</td>
</tr>
<tr>
<td style="text-align: left;">64</td>
<td>注销</td>
</tr>
<tr>
<td style="text-align: left;">128</td>
<td>审核</td>
</tr>
<tr>
<td style="text-align: left;">256</td>
<td>危险</td>
</tr>
</tbody>
</table>
<p><strong>flagBit</strong>
按位存储的数据, 判断方法:</p>
<pre><code># PHP 用户标签 $userFlagBit
# 判断是否是小号
($userFlagBit &amp; 8) == 8
# JS 用户标签 userFlagBit
# 判断是否是小号
(userFlagBit &amp; 8) == 8</code></pre>
<p><strong>备注</strong></p>
<ul>
<li>客户端使用返回的 session 登录服务端, 由服务端完成账号注册/登录逻辑</li>
<li>后期跟平台交互的时候也需要使用 session 值进行身份验证</li>
</ul>