Return more detailed errors in HTTP handlers

This commit is contained in:
Grégoire Delattre 2017-01-09 14:23:54 +01:00
parent 76eaa87fdd
commit bb02782dfb
3 changed files with 9 additions and 8 deletions

View File

@ -2,6 +2,7 @@ package extmedias
import (
"database/sql"
"errors"
"fmt"
"net/http"
@ -176,13 +177,13 @@ func Explore(env *web.Env, w http.ResponseWriter, r *http.Request) error {
v := auth.GetCurrentUser(r, env.Log)
user, ok := v.(*users.User)
if !ok {
return fmt.Errorf("invalid user type")
return env.RenderError(w, errors.New("invalid user"))
}
// Get the medias without trying to refresh them
movies, err := GetMovies(env, user, source, category, false)
if err != nil {
return err
return env.RenderError(w, err)
}
return env.RenderJSON(w, movies)
@ -210,7 +211,7 @@ func ExploreShows(env *web.Env, w http.ResponseWriter, r *http.Request) error {
// Get the medias without trying to refresh them
shows, err := GetShows(env, source, category, false)
if err != nil {
return err
return env.RenderError(w, err)
}
return env.RenderJSON(w, shows)
@ -252,7 +253,7 @@ func Refresh(env *web.Env, w http.ResponseWriter, r *http.Request) error {
// GetMedias and refresh them
_, err := GetMovies(env, user, source, category, true)
if err != nil {
return err
return env.RenderError(w, err)
}
}
@ -278,7 +279,7 @@ func RefreshShows(env *web.Env, w http.ResponseWriter, r *http.Request) error {
// GetMedias and refresh them
_, err := GetShows(env, source, category, true)
if err != nil {
return err
return env.RenderError(w, err)
}
}

View File

@ -134,7 +134,7 @@ func SearchMovie(env *web.Env, w http.ResponseWriter, r *http.Request) error {
}
err := json.NewDecoder(r.Body).Decode(&data)
if err != nil {
return err
return env.RenderError(w, errors.New("failed to get the search key"))
}
if data.Key == "" {
@ -144,7 +144,7 @@ func SearchMovie(env *web.Env, w http.ResponseWriter, r *http.Request) error {
v := auth.GetCurrentUser(r, env.Log)
user, ok := v.(*users.User)
if !ok {
return fmt.Errorf("invalid user type")
return env.RenderError(w, errors.New("invalid user"))
}
var movies []*polochon.Movie

View File

@ -32,7 +32,7 @@ func SearchShow(env *web.Env, w http.ResponseWriter, r *http.Request) error {
Key string `json:"key"`
}
if err := json.NewDecoder(r.Body).Decode(&data); err != nil {
return err
return env.RenderError(w, errors.New("failed to get the search key"))
}
if data.Key == "" {