main.go 445 B

123456789101112131415161718192021222324252627
  1. package main
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. )
  6. type User struct {
  7. ID int
  8. }
  9. var data = map[string][]byte{
  10. "ok": []byte(`{"ID": 27}`),
  11. "fail": []byte(`{"ID": 27`),
  12. }
  13. func GetUser(key string) (*User, error) {
  14. if jsonStr, ok := data[key]; ok {
  15. user := &User{}
  16. err := json.Unmarshal(jsonStr, user)
  17. if err != nil {
  18. return nil, fmt.Errorf("Cant decode json")
  19. }
  20. return user, nil
  21. }
  22. return nil, fmt.Errorf("User doesnt exist")
  23. }