# 登入 ## A. 第一次登入,回傳隱私權政策 Attribute | Description | IsRequired| Remark -|-|-|- username | String | true | 帳號 password | String | true | 密碼 device | String | true | 設備名稱 Request: ```url= POST /user/login ``` Payload: ```json= { "username": "test", "password": "123", "device": "pc" } ``` Attribute | Description | Remark -|-|- data.token | String | token data.expiredAt | timeStamp | 到期日期 data.id | String | 使用者Id detail.sequenceId | String | 暫存ID msg | String | 錯誤訊息 code | String | 101(找不到使用者)/102(密碼錯誤)/103(重複登入)/105(未同意隱私權) Response (成功): ```json= { "success": true, "data": { "token": "9CFI827UEI0081-19234IUHW9W", "expiredAt": 1583991833330, "id": "101" } } ``` Response (帳號已登入) ```json= { "success": false, "code": 103, "detail": { "sequenceId": "123456789", } } ``` Response (尚未登入EULA) ```json= { "success": false, "code": 105, "msg": "登入失敗,用戶第一次登入,請同意隱私權政策", "detail": { "sequenceId": "123456789", } } ``` ## B.重複登入(強迫登入,踢掉上一個使用者) Request: ```url= POST /user/login/$sequenceId ``` ```json= { "success": true, "data": { "token": "9CFI827UEI0081-19234IUHW9W", "expiredAt": 1583991833330, "id": "101" } } ``` ## C.同意 EULA 並登入 * 寫入資料庫,下次登入不必再次同意 Request: ```url= POST /user/login/eula/$sequenceId ``` Response ```json= { "success": true, "data": { "token": "9CFI827UEI0081-19234IUHW9W", "expiredAt": 1583991833330, "id": "101" } } ```