|
@@ -0,0 +1,279 @@
|
|
|
+# IC1101 AWS Server Web3 API
|
|
|
+
|
|
|
+#### 一、通用说明
|
|
|
+
|
|
|
+通用前缀: http://192.168.7.231:7379/new_battle
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+请求方式: `Get`
|
|
|
+
|
|
|
+测试客户端:
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 二、枚举定义
|
|
|
+
|
|
|
+##### 1.登录类型枚举 `ChannelEnum`
|
|
|
+
|
|
|
+```java
|
|
|
+public enum ChannelEnum {
|
|
|
+ WD(1, "wallect connect QR code"),
|
|
|
+ MetaMask(2, "Metamask网页登录"),
|
|
|
+ GameAccount(3, "游戏账号登录"),
|
|
|
+ Guest(4, "游客登录"),
|
|
|
+ UNKNOWN(1000, "未知");
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+##### 2.钱包类型 `WalletEnum`
|
|
|
+
|
|
|
+```java
|
|
|
+public enum WalletEnum {
|
|
|
+ Game(1, "游戏小钱包"),
|
|
|
+ Auth(2, "认证的WEB3钱包"),
|
|
|
+ UNKNOWN(1000, "未知");
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 三、API列表
|
|
|
+
|
|
|
+##### 1.登录接口 `/loginByChannel `
|
|
|
+
|
|
|
+<img src="https://mdres20230215.oss-cn-shanghai.aliyuncs.com/walletflow.jpg" alt="image-20230215193208858" style="zoom:50%;" />
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+请求
|
|
|
+
|
|
|
+| 参数名 | 类型 | 可否为空 | 是否参与加密 | 说明 |
|
|
|
+| --------- | ------ | -------- | ------------ | ------------------------------------------------------------ |
|
|
|
+| channelId | int | 否 | 是 | 1.二维码walletconnect扫码登录 2.钱包登录metamask 3.传统账密登录 ,具体见ChannelEnum结构 |
|
|
|
+| account | string | 否 | 是 | 账号名 |
|
|
|
+| pwd | string | 是 | 否 | 密码 |
|
|
|
+| sign | string | 否 | 否 | md5加密值 |
|
|
|
+| timestamp | string | 否 | 是 | 时间戳 毫秒 |
|
|
|
+
|
|
|
+```http
|
|
|
+http://127.0.0.1:7379/new_battle/loginByChannel?channelId=1&account=0xeccbc87e4b5ce2fe28308fd9f2a7baf3&sign=0f6aa27a4e529987d808162e38e731ef×tamp=1676373020000
|
|
|
+```
|
|
|
+
|
|
|
+返回:
|
|
|
+
|
|
|
+```json
|
|
|
+{
|
|
|
+ "data": {
|
|
|
+ "account": "a1",
|
|
|
+ "authWallets": [
|
|
|
+ {
|
|
|
+ "address": "0xeccbc87e4b5ce2fe28308fd9f2a7baf3",
|
|
|
+ "createAt": 1676459788011,
|
|
|
+ "createTime": "2023-02-15 19:16:28",
|
|
|
+ "id": 7
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "bindAt": 1676530976623,
|
|
|
+ "bindTime": "2023-02-16 15:02:56",
|
|
|
+ "channelId": 1,
|
|
|
+ "createAt": 1676459787846,
|
|
|
+ "createTime": "2023-02-15 19:16:27",
|
|
|
+ "edit": true,
|
|
|
+ "email": "a1@qq.com",
|
|
|
+ "id": 8,
|
|
|
+ "inviteCode": "ADSFCSNPCU",
|
|
|
+ "lastLoginAt": 1676530976623,
|
|
|
+ "lastLoginIp": "127.0.0.1",
|
|
|
+ "lastLoginTime": "2023-02-16 15:02:56",
|
|
|
+ "nickName": "a1",
|
|
|
+ "score": 0,
|
|
|
+ "smallWallet": {
|
|
|
+ "address": "0x00000000000000000000000000000000",
|
|
|
+ "createAt": 1676459787993,
|
|
|
+ "createTime": "2023-02-15 19:16:27",
|
|
|
+ "hdIdx": 7,
|
|
|
+ "id": 7
|
|
|
+ },
|
|
|
+ "status": 0,
|
|
|
+ "token": "oZtH7N6ovx",
|
|
|
+ "tokenExpireAt": 1676790176623,
|
|
|
+ "tokenExpireTime": "2023-02-19 15:02:56"
|
|
|
+ },
|
|
|
+ "errCode": 0,
|
|
|
+ "errMsg": "Success"
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+##### 2 .web端账号绑定接口 `/bindAccountWithWallet`
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+**牵涉到的功能**
|
|
|
+
|
|
|
+- 邮箱验证码认证
|
|
|
+
|
|
|
+- 上级用户邀请码溯源后的积分增加
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+请求
|
|
|
+
|
|
|
+| 参数名 | 类型 | 可否为空 | 是否参与加密 | 说明 |
|
|
|
+| ------------- | ------ | -------- | ------------ | -------------------- |
|
|
|
+| token | string | 否 | 是 | 登录成功后获取的令牌 |
|
|
|
+| account | string | 否 | 是 | 账号名 |
|
|
|
+| pwd | string | 否 | 否 | 密码 |
|
|
|
+| email | string | 否 | 是 | 邮箱 |
|
|
|
+| emailCode | string | 否 | 否 | 邮箱验证码 |
|
|
|
+| srcInviteCode | string | 否 | 否 | 我上级的邀请码 |
|
|
|
+| sign | string | 否 | 否 | md5加密值 |
|
|
|
+| timestamp | string | 否 | 是 | 时间戳 毫秒 |
|
|
|
+
|
|
|
+```http
|
|
|
+http://127.0.0.1:7379/new_battle/bindAccountWithWallet?account=a1&pwd=123456&email=a1@qq.com&emailCode=xjhung&srcInviteCode=loqsx&sign=0f6aa27a4e529987d808162e38e731ef×tamp=1676373020000&token=kjumh
|
|
|
+```
|
|
|
+
|
|
|
+返回:
|
|
|
+
|
|
|
+```json
|
|
|
+{
|
|
|
+ "data": {
|
|
|
+ "account": "a1",
|
|
|
+ "authWallets": [
|
|
|
+ {
|
|
|
+ "address": "0xeccbc87e4b5ce2fe28308fd9f2a7baf3",
|
|
|
+ "createAt": 1676459788011,
|
|
|
+ "createTime": "2023-02-15 19:16:28",
|
|
|
+ "id": 7
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "channelId": 1,
|
|
|
+ "createAt": 1676459787846,
|
|
|
+ "createTime": "2023-02-15 19:16:27",
|
|
|
+ "edit": true,
|
|
|
+ "email": "a1@qq.com",
|
|
|
+ "id": 8,
|
|
|
+ "inviteCode": "ADSFCSNPCU",
|
|
|
+ "lastLoginIp": "",
|
|
|
+ "nickName": "a1",
|
|
|
+ "score": 0,
|
|
|
+ "smallWallet": {
|
|
|
+ "address": "0x00000000000000000000000000000000",
|
|
|
+ "createAt": 1676459787993,
|
|
|
+ "createTime": "2023-02-15 19:16:27",
|
|
|
+ "hdIdx": 7,
|
|
|
+ "id": 7
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "errCode": 0,
|
|
|
+ "errMsg": "Success"
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+##### 3 .账号信息接口 `/accountInfo`
|
|
|
+
|
|
|
+请求
|
|
|
+
|
|
|
+| 参数名 | 类型 | 可否为空 | 是否参与加密 | 说明 |
|
|
|
+| --------- | ------ | -------- | ------------ | -------------------- |
|
|
|
+| token | string | 否 | 是 | 登录成功后获取的令牌 |
|
|
|
+| sign | string | 否 | 否 | md5加密值 |
|
|
|
+| timestamp | string | 否 | 是 | 时间戳 毫秒 |
|
|
|
+
|
|
|
+请求
|
|
|
+
|
|
|
+```http
|
|
|
+http://127.0.0.1:7379/new_battle/accountInfo?token=oZtH7N6ovx&sign=0f6aa27a4e529987d808162e38e731ef×tamp=1676373020000
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+返回
|
|
|
+
|
|
|
+```json
|
|
|
+{
|
|
|
+ "data": {
|
|
|
+ "account": "a1",
|
|
|
+ "authWallets": [
|
|
|
+ {
|
|
|
+ "address": "0xeccbc87e4b5ce2fe28308fd9f2a7baf3",
|
|
|
+ "createAt": 1676459788011,
|
|
|
+ "createTime": "2023-02-15 19:16:28",
|
|
|
+ "id": 7
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "bindAt": 1676530976623,
|
|
|
+ "bindTime": "2023-02-16 15:02:56",
|
|
|
+ "channelId": 1,
|
|
|
+ "createAt": 1676459787846,
|
|
|
+ "createTime": "2023-02-15 19:16:27",
|
|
|
+ "edit": true,
|
|
|
+ "email": "a1@qq.com",
|
|
|
+ "id": 8,
|
|
|
+ "inviteCode": "ADSFCSNPCU",
|
|
|
+ "lastLoginAt": 0,
|
|
|
+ "lastLoginIp": "127.0.0.1",
|
|
|
+ "nickName": "a1",
|
|
|
+ "score": 0,
|
|
|
+ "smallWallet": {
|
|
|
+ "address": "0x00000000000000000000000000000000",
|
|
|
+ "createAt": 1676459787993,
|
|
|
+ "createTime": "2023-02-15 19:16:27",
|
|
|
+ "hdIdx": 7,
|
|
|
+ "id": 7
|
|
|
+ },
|
|
|
+ "status": 0,
|
|
|
+ "token": "oZtH7N6ovx",
|
|
|
+ "tokenExpireAt": 1676790176623,
|
|
|
+ "tokenExpireTime": "2023-02-19 15:02:56"
|
|
|
+ },
|
|
|
+ "errCode": 0,
|
|
|
+ "errMsg": "Success"
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+##### 4 .账号拉新积分明细 `/accountScoreDetails`
|
|
|
+
|
|
|
+请求
|
|
|
+
|
|
|
+| 参数名 | 类型 | 是否必填 | 是否参与加密 | 说明 |
|
|
|
+| --------- | ------ | -------- | ------------ | ---------------------------------------------------------- |
|
|
|
+| pageSize | int | 否 | 否 | 分页的单页最大记录数,-1代表不分页,获取所有数据,默认是10条 |
|
|
|
+| curIdx | int | 否 | 否 | 当前第几页,默认从0开始 |
|
|
|
+| token | string | 是 | 是 | 登录成功后获取的令牌 |
|
|
|
+| sign | string | 是 | 否 | md5加密值 |
|
|
|
+| timestamp | string | 是 | 是 | 时间戳 毫秒 |
|
|
|
+
|
|
|
+```http
|
|
|
+http://127.0.0.1:7379/new_battle/accountScoreDetails?token=oc904uFv4f&sign=0f6aa27a4e529987d808162e38e731ef×tamp=1676373020000
|
|
|
+```
|
|
|
+
|
|
|
+返回
|
|
|
+
|
|
|
+```json
|
|
|
+{
|
|
|
+ "data": [
|
|
|
+ {
|
|
|
+ "createAt": 1676623234384,
|
|
|
+ "createTime": "2023-02-17 16:40:34",
|
|
|
+ "dstAccountId": 10,
|
|
|
+ "dstAccountName": "",
|
|
|
+ "dstPoint": 100,
|
|
|
+ "eventDesc": "成功注册增加100积分",
|
|
|
+ "srcAccountId": 10,
|
|
|
+ "srcPoint": 0
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "errCode": 0,
|
|
|
+ "errMsg": "Success",
|
|
|
+ "totalSize": 1
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+
|