实现Ticket登录

This commit is contained in:
GoEdgeLab
2024-05-10 14:28:30 +08:00
parent f55f034ac2
commit 49a3027935
6 changed files with 822 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
// 登录票据
message LoginTicket {
int64 id = 1; // ID
int64 expiresAt = 2; // 过期时间
string value = 3; // 票据值
int64 adminId = 4; // 管理员ID
int64 userId = 5; // 用户ID
string ip = 6; // 登录时客户端IP
}

View File

@@ -0,0 +1,36 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_login_ticket.proto";
// 登录票据相关服务
service LoginTicketService {
// 创建票据
rpc createLoginTicket(CreateLoginTicketRequest) returns (CreateLoginTicketResponse);
// 查找票据
// 查找成功后,会自动删除票据信息,所以票据信息只能查询一次
rpc findLoginTicketWithValue(FindLoginTicketWithValueRequest) returns (FindLoginTicketWithValueResponse);
}
// 创建票据
message CreateLoginTicketRequest {
int64 adminId = 1; // 管理员ID和用户ID二选一
int64 userId = 2; // 用户ID
string ip = 3; // 可选参数用户客户端IP
}
message CreateLoginTicketResponse {
string value = 1; // 票据值
}
// 查找票据
message FindLoginTicketWithValueRequest {
string value = 1; // 票据值
}
message FindLoginTicketWithValueResponse {
LoginTicket loginTicket = 1; // 票据信息
}