twisk
twisk copied to clipboard
How to write my cookies to browsers?
Where I can write my cookies to browser ?
func (s *Service) Auth(c context.Context, req *iam.AuthReq) (*iam.AuthResp, error) {
if err := req.Validate(); err != nil {
return nil, err
}
dbCtx := s.db.WithContext(c)
usr, err := s.udb.FindByAuth(dbCtx, req.Auth)
if err != nil {
return nil, invalidUserPW
}
if !s.sec.MatchesHash(usr.Password, req.Password) {
return nil, invalidUserPW
}
token, err := s.tg.GenerateToken(&guidecentury.AuthUser{
ID: usr.ID,
TenantID: usr.TenantID,
Username: usr.Username,
Email: usr.Email,
Role: guidecentury.AccessRole(usr.RoleID),
})
if err != nil {
return nil, err
}
uToken := xid.New().String()
usr.UpdateLoginDetails(uToken)
if err = s.udb.UpdateLastLogin(dbCtx, usr); err != nil {
return nil, err
}
// Todo Write my cookies to browsers?
return &iam.AuthResp{
Token: token,
RefreshToken: uToken,
}, nil
}
And how I write my cookies?