feat: 打通网关和用户注册的逻辑,添加用户注册 HTTP 端点
This commit is contained in:
42
backend/gateway/internal/service/user_service.go
Normal file
42
backend/gateway/internal/service/user_service.go
Normal file
@@ -0,0 +1,42 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"backend/gateway/internal/config"
|
||||
"backend/shared/pkg/logger"
|
||||
|
||||
"google.golang.org/grpc"
|
||||
"google.golang.org/grpc/credentials/insecure"
|
||||
|
||||
// 导入生成的 proto 代码
|
||||
userpb "backend/services/user-svc/proto"
|
||||
)
|
||||
|
||||
type UserService struct {
|
||||
client userpb.UserServiceClient
|
||||
}
|
||||
|
||||
func NewUserService(cfg *config.Config) (*UserService, error) {
|
||||
// 连接到用户服务
|
||||
conn, err := grpc.Dial(cfg.Services.UserService.Addr, grpc.WithTransportCredentials(insecure.NewCredentials()))
|
||||
if err != nil {
|
||||
logger.Error("Failed to connect to user service: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// 创建 gRPC 客户端
|
||||
client := userpb.NewUserServiceClient(conn)
|
||||
|
||||
return &UserService{client: client}, nil
|
||||
}
|
||||
|
||||
// Register 用户注册
|
||||
func (s *UserService) Register(ctx context.Context, account, password string) (*userpb.RegisterResponse, error) {
|
||||
req := &userpb.RegisterRequest{
|
||||
Account: account,
|
||||
Password: password,
|
||||
}
|
||||
|
||||
return s.client.Register(ctx, req)
|
||||
}
|
||||
Reference in New Issue
Block a user