2. 获取token
<h1>获取Token</h1>
<h5>简要描述</h5>
<ul>
<li>请求所有接口都需要token</li>
</ul>
<h5>请求URL</h5>
<ul>
<li><code>{host}/api/blade-auth/oauth/token</code></li>
</ul>
<h5>请求方式</h5>
<ul>
<li>POST(HTTP)application/x-www-form-urlencoded</li>
</ul>
<h5>请求头</h5>
<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;">Authorization</td>
<td style="text-align: left;">String</td>
<td>客户端认证请求头,请求头对应的值为 "Basic c3dvcmQ6c3dvcmRfc2VjcmV0",其中"c3dvcmQ6c3dvcmRfc2VjcmV0"为clientId:clientSecret串转换为的base64编码</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;">tenantId</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>租户id</td>
</tr>
<tr>
<td style="text-align: left;">username</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>用户名</td>
</tr>
<tr>
<td style="text-align: left;">password</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>密码,经过MD5加密后生成的串(字母小写)</td>
</tr>
</tbody>
</table>
<h5>返回示例</h5>
<pre><code> {
&quot;tenant_id&quot;: &quot;000000&quot;,
&quot;user_id&quot;: &quot;&quot;,
&quot;dept_id&quot;: &quot;&quot;,
&quot;post_id&quot;: &quot;&quot;,
&quot;role_id&quot;: &quot;&quot;,
&quot;oauth_id&quot;: &quot;&quot;,
&quot;account&quot;: &quot;admin&quot;,
&quot;user_name&quot;: &quot;admin&quot;,
&quot;nick_name&quot;: &quot;admin&quot;,
&quot;role_name&quot;: &quot;admin&quot;,
&quot;avatar&quot;: &quot;&quot;,
&quot;access_token&quot;: &quot;eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpc3MiOiJpc3N1c2VyIiwiYXVkIjoiYXVkaWVuY2UiLCJ0ZW5hbnRfaWQiOiIzNTkyMDkiLCJ1c2VyX25hbWUiOiJoc2R6aHl0aCIsImF2YXRhciI6IiIsInRva2VuX3R5cGUiOiJhY2Nlc3NfdG9rZW4iLCJyb2xlX25hbWUiOiJhZG1pbiIsInBvc3RfaWQiOiIxNTUyMTE0NTMwNjExNzAzODEwIiwidXNlcl9pZCI6IjE1NTIxMTU3NDU4NjkzNDQ3NzAiLCJyb2xlX2lkIjoiMTU1MjExNDUyODUyMjk0MDQxNyIsIm5pY2tfbmFtZSI6IuiClumbqOadviIsImRldGFpbCI6eyJ0eXBlIjoid2ViIn0sImRlcHRfaWQiOiIxNTUyMTE0NTMwNDgxNjgwMzg1IiwiYWNjb3VudCI6ImhzZHpoeXRoIiwiY2xpZW50X2lkIjoic2FiZXIiLCJleHAiOjE2NTg4OTE5OTMsIm5iZiI6MTY1ODg4ODM5M30.VeUuY5oLz711KWuhM3sElD-OiIk6jN4xuLiseb-FdyRnHVsq-YAHDzPaeAlpuqQguF4M7fWKq14BDrgNcMMCYg&quot;,
&quot;refresh_token&quot;: &quot;eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpc3MiOiJpc3N1c2VyIiwiYXVkIjoiYXVkaWVuY2UiLCJ1c2VyX2lkIjoiMTU1MjExNTc0NTg2OTM0NDc3MCIsInJvbGVfaWQiOiIxNTUyMTE0NTI4NTIyOTQwNDE3IiwidG9rZW5fdHlwZSI6InJlZnJlc2hfdG9rZW4iLCJkZXB0X2lkIjoiMTU1MjExNDUzMDQ4MTY4MDM4NSIsImNsaWVudF9pZCI6InNhYmVyIiwiZXhwIjoxNjU5NDkzMTkzLCJuYmYiOjE2NTg4ODgzOTN9.zBUjZctIFWvmwprhzt66osVy1bIBSbzkwAOi1hQDDqn6GTG576EqIsD9MigY9GkdW7fcV7DABAM_Cdk587q5uA&quot;,
&quot;token_type&quot;: &quot;bearer&quot;,
&quot;expires_in&quot;: 3600,
&quot;detail&quot;: {
&quot;type&quot;: &quot;web&quot;
},
&quot;license&quot;: &quot;Powered By YLKJ&quot;
}</code></pre>
<h5>返回参数说明</h5>
<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;">tenant_id</td>
<td style="text-align: left;">String</td>
<td>租户id</td>
</tr>
<tr>
<td style="text-align: left;">user_id</td>
<td style="text-align: left;">String</td>
<td>用户id</td>
</tr>
<tr>
<td style="text-align: left;">dept_id</td>
<td style="text-align: left;">String</td>
<td>部门id</td>
</tr>
<tr>
<td style="text-align: left;">post_id</td>
<td style="text-align: left;">String</td>
<td>岗位id</td>
</tr>
<tr>
<td style="text-align: left;">role_id</td>
<td style="text-align: left;">String</td>
<td>角色id</td>
</tr>
<tr>
<td style="text-align: left;">oauth_id</td>
<td style="text-align: left;">String</td>
<td>认证id</td>
</tr>
<tr>
<td style="text-align: left;">account</td>
<td style="text-align: left;">String</td>
<td>账号</td>
</tr>
<tr>
<td style="text-align: left;">user_name</td>
<td style="text-align: left;">String</td>
<td>用户名</td>
</tr>
<tr>
<td style="text-align: left;">nick_name</td>
<td style="text-align: left;">String</td>
<td>昵称</td>
</tr>
<tr>
<td style="text-align: left;">role_name</td>
<td style="text-align: left;">String</td>
<td>角色名</td>
</tr>
<tr>
<td style="text-align: left;">avatar</td>
<td style="text-align: left;">String</td>
<td>头像url</td>
</tr>
<tr>
<td style="text-align: left;">access_token</td>
<td style="text-align: left;">String</td>
<td>Token</td>
</tr>
<tr>
<td style="text-align: left;">refresh_token</td>
<td style="text-align: left;">String</td>
<td>刷新Token</td>
</tr>
<tr>
<td style="text-align: left;">token_type</td>
<td style="text-align: left;">String</td>
<td>Token类型</td>
</tr>
<tr>
<td style="text-align: left;">expires_in</td>
<td style="text-align: left;">String</td>
<td>有效期</td>
</tr>
<tr>
<td style="text-align: left;">detail</td>
<td style="text-align: left;">String</td>
<td>类型详情</td>
</tr>
<tr>
<td style="text-align: left;">license</td>
<td style="text-align: left;">String</td>
<td>许可颁发方</td>
</tr>
</tbody>
</table>