here both the cases when an user entered a wrong password or even right password error returning why?
also how can i show user that their email is also wrong?
func Login(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json")
var user model.User
var dbUser model.User
if err := json.NewDecoder(r.Body).Decode(&user); err == nil {
if _, err := service.Login_User(&user); err == nil {
json.NewEncoder(w).Encode(user)
} else {
w.WriteHeader(http.StatusInternalServerError)
//w.Write([]byte)
json.NewEncoder(w).Encode(err)
}
} else {
http.Error(w, err.Error(), http.StatusBadRequest)
return
}
userPass := []byte(user.Password)
dbPass := []byte(dbUser.Password)
PassErr := bcrypt.CompareHashAndPassword(dbPass, userPass)
if PassErr != nil {
w.Write([]byte(`{"response":"Wrong Password"}`))
return
}
}