goph

package
v0.0.0-...-e81cf84 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 16, 2023 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func HashPassword

func HashPassword(username string) string

hashUsername хеширует логин пользователя.

Types

type Goph

type Goph interface {
	CheckToken(token string) (bool, error)
	CreateUser(username, password string) error
	Authenticate(username, password string) (string, error)
	SaveData(userID int64, memoryCell *schema.MemoryCell) (int64, error)
	GetUserDataInfo(userID int64) ([]*schema.InfoCell, error)
	GetUserMemoryData(userID int64, infoIDs []int64) ([]*schema.MemoryCell, error)
	UserExists(username string) (bool, error)
	GetUserIDFromToken(token string) (int64, error)
}

Goph представляет интерфейс для работы с бизнес-логикой приложения.

type GophLogic

type GophLogic struct {
	// contains filtered or unexported fields
}

GophLogic представляет реализацию интерфейса Goph.

func New

func New(keeper keeper.Keeper, config config.ServerConfig) *GophLogic

New создает новый экземпляр GophLogic с заданным Keeper и ServerConfig. Генерирует случайный секретный ключ.

func (*GophLogic) Authenticate

func (g *GophLogic) Authenticate(username, password string) (string, error)

Authenticate выполняет аутентификацию пользователя. Хеширует пароль и проверяет его с хранимым хешем в Keeper. Возвращает токен или ошибку, если аутентификация не удалась.

func (*GophLogic) CheckToken

func (g *GophLogic) CheckToken(token string) (bool, error)

CheckToken - проверяет токен на подлинность

func (*GophLogic) CreateUser

func (g *GophLogic) CreateUser(username, password string) error

CreateUser создает нового пользователя. Хеширует логин и вызывает метод Keeper.CreateUser для сохранения пользователя.

func (*GophLogic) GenerateToken

func (g *GophLogic) GenerateToken(userID int64) (string, error)

GenerateToken - генерирует токен из ID пользователя и секретного ключа

func (*GophLogic) GetUserDataInfo

func (g *GophLogic) GetUserDataInfo(userID int64) ([]*schema.InfoCell, error)

GetUserData возвращает информацию о данных пользователя.

func (*GophLogic) GetUserID

func (g *GophLogic) GetUserID(username string) (int64, error)

GetUserID - возвращает ID пользователя

func (*GophLogic) GetUserIDFromToken

func (g *GophLogic) GetUserIDFromToken(token string) (int64, error)

GetUserIDFromToken - получает ID пользователя из токена.

func (*GophLogic) GetUserMemoryData

func (g *GophLogic) GetUserMemoryData(userID int64, infoIDs []int64) ([]*schema.MemoryCell, error)

GetUserMemoryData возвращает данные пользователя для указанных идентификаторов InfoID. Проверяет, принадлежат ли идентификаторы пользователю, и вызывает соответствующий метод Keeper для получения данных из базы данных.

func (*GophLogic) SaveData

func (g *GophLogic) SaveData(userID int64, memoryCell *schema.MemoryCell) (int64, error)

SaveData сохраняет новые данные для пользователя.

func (*GophLogic) SetSecretKey

func (g *GophLogic) SetSecretKey(secretKey []byte)

SetSecretKey устанавливает секретный ключ для GophLogic.

func (*GophLogic) UserExists

func (g *GophLogic) UserExists(username string) (bool, error)

ExistUser - проверяет существует ли пользователь

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL