package api import ( "encoding/json" "net/http" ) func (api *API) registerRoutes() { api.Router.HandleFunc("/MediaItems", multipleMiddleware( api.mediaItemsHandler, api.authMiddleware, )) api.Router.HandleFunc("/Upload", multipleMiddleware( api.uploadHandler, api.authMiddleware, )) api.Router.HandleFunc("/Albums", multipleMiddleware( api.albumsHandler, api.authMiddleware, )) api.Router.HandleFunc("/Users", multipleMiddleware( api.usersHandler, api.authMiddleware, )) api.Router.HandleFunc("/Tags", multipleMiddleware( api.tagsHandler, api.authMiddleware, )) api.Router.HandleFunc("/Info", multipleMiddleware( api.infoHandler, api.authMiddleware, )) api.Router.HandleFunc("/Me", multipleMiddleware( api.meHandler, api.authMiddleware, )) api.Router.HandleFunc("/Logout", api.logoutHandler) api.Router.HandleFunc("/Login", api.loginHandler) api.Router.HandleFunc("/RefreshLogin", api.refreshLoginHandler) } // https://stackoverflow.com/a/59764037 func errorJSON(w http.ResponseWriter, err string, code int) { w.Header().Set("Content-Type", "application/json; charset=utf-8") w.Header().Set("X-Content-Type-Options", "nosniff") w.WriteHeader(code) json.NewEncoder(w).Encode(map[string]interface{}{"error": err}) } func successJSON(w http.ResponseWriter, msg string, code int) { w.Header().Set("Content-Type", "application/json; charset=utf-8") w.Header().Set("X-Content-Type-Options", "nosniff") w.WriteHeader(code) json.NewEncoder(w).Encode(map[string]interface{}{"success": msg}) }