Please enable Javascript to view the contents
用户模块
用户
接口
User
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
string userID
通过用户的uuid查询 users 数据表获取用户的详细信息。
umeta 查询后需要做链接到 umetas 数据表。通过userid 来查询 umetas 的指定用户字段的所有信息。
// 用户信息返回数据
message UserResponse{
string userId=1;
string name=2;
string email=3;
string avatar=4;
int32 status=5;
int32 privacy=6;
bool verified=7;
int32 createdAt=8;
repeated Umeta umetas=9;
}
|
Create
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
请求数据的参数包括用户的用户名、邮箱、和php生成的默认密码(123456)。
返回的用户数据userid是自动生成,其他字段为默认值。用户名、邮箱、密码为请求的参数值。
返回给php后,php要发送邮箱验证。
如果该用户还未验证,那么 验证字段为空, 如果用户验证后为验证时的时间戳。
// 用户基础信息请求数据
message UserBasicRequest{
string name=1;
string email=2;
string password=3;
}
// 用户信息返回数据
message UserResponse{
string userId=1;
string name=2;
string email=3;
string avatar=4;
int32 status=5;
int32 privacy=6;
bool verified=7;
int32 createdAt=8;
repeated Umeta umetas=9;
}
|
Update
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
首先通过userid去指定操作某个用户,除了password和resetTotp以外,其他按请求值修改。
如果password没传,就不修改密码;如果传了,验证oldPassword是否跟数据库中的密码相同(go、php),php传密文直接通过go去对比密码,如果密码对比不上,返回数据都是空,如果都是空,证明更改密码失败。
如果二步验证传了,把 users 数据表中的二步验证字段设置为php随机生成的secret。
// 用户详细信息请求数据
message UserDetailRequest{
string userId=1;
string name=2;
int32 Status=3;
int32 privacy=4;
// password是否传32, 88, 44, 66, 28, 36, 74, 65}
oneof hasPassword{
string password=5;
}
string oldPassword=6;
repeated Umeta umetas=7;
// 是否重置二步验证
oneof hasResetTotp{
string resetTotp=8;
}
// 用户信息返回数据
message UserResponse{
string userId=1;
string name=2;
string email=3;
string avatar=4;
int32 status=5;
int32 privacy=6;
bool verified=7;
int32 createdAt=8;
repeated Umeta umetas=9;
}
|
好友
AddFriends-添加好友
1
2
3
4
5
6
7
8
9
10
11
|
添加好友需要当前用户的userid和待添加好友邮箱列表。
通过邮箱到 users 数据表中获取好友的uuid。
然后和当前的userid建立关联。在friends表中建立。
如果对方设置添加好友哪里是任何人能添加就是 1 。如果需要认证就是 0
返回好友信息列表
// 添加好友请求数据
message FriendRequest{
string userId=1;
repeated string emails=2;
}
|
Friends-获取好友列表
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
通过请求数据userid来指定获取某个用户的所有好友。
verified 好友验证过滤,不传递返回所有,1返回已通过好友验证的,0返回待验证好友
// 好友列表请求数据
message FriendsRequest{
string userId=1;
string verified=2;
int32 page=3;
int32 limit=4;
}
//好友列表返回数据
message FriendResponse{
repeated UserResponse friends=1;
}
|
RemoveFriends-移除好友
1
2
3
4
5
6
7
8
|
通过请求值:当前用户uuid和待移除好友邮箱列表(通过邮箱获取uuid),之后在friend 数据表中把关联移除掉。
// 请求
message FriendRequest{
string userId=1;
repeated string emails=2;
}
// 返回操作码
|
VerifyFriends-验证好友
1
2
|
通过当前用户的uuid和好友邮箱列表(通过邮箱获取uuid),之后在friends 数据表中把 verified的值由0变1
返回操作码。
|