2
0

util.go 630 B

123456789101112131415161718192021222324
  1. package config
  2. import (
  3. "encoding/base64"
  4. "encoding/json"
  5. "github.com/gravitl/netmaker/logger"
  6. "github.com/gravitl/netmaker/models"
  7. )
  8. // ParseAccessToken - used to parse the base64 encoded access token
  9. func ParseAccessToken(token string) (*models.AccessToken, error) {
  10. tokenbytes, err := base64.StdEncoding.DecodeString(token)
  11. if err != nil {
  12. logger.Log(0, "error decoding token", err.Error())
  13. return nil, err
  14. }
  15. var accesstoken models.AccessToken
  16. if err := json.Unmarshal(tokenbytes, &accesstoken); err != nil {
  17. logger.Log(0, "error decoding token", err.Error())
  18. return nil, err
  19. }
  20. return &accesstoken, nil
  21. }