Пример #1
0
// Authenticate - autenticate a user and return true or return false and send an unauthorized status
func Authenticate(currentUser *models.User, w http.ResponseWriter, r *http.Request) bool {
	token := core.ExtractToken(r.Header.Get("Authorization"))

	user, err := models.GetUserByToken(token)

	if err != nil {
		Unauthorized(w, r)
		return false
	}

	currentUser.ID = user.ID
	currentUser.Email = user.Email
	currentUser.Password = user.Password

	if currentUser.ID == 0 {
		Unauthorized(w, r)
		return false
	}

	return true
}