chore: update err handler (#12)

This commit is contained in:
STEVEN
2021-12-15 10:55:17 +08:00
committed by GitHub
parent 5dc3d4a39e
commit 1fb8018f0b
11 changed files with 82 additions and 79 deletions

View File

@@ -2,7 +2,6 @@ package api
import (
"bytes"
"database/sql"
"encoding/json"
"fmt"
"io/ioutil"
@@ -15,13 +14,13 @@ import (
"github.com/gorilla/mux"
)
type UserSignUp struct {
Username string `json:"username"`
Password string `json:"password"`
}
func handleUserSignUp(w http.ResponseWriter, r *http.Request) {
userSignup := UserSignUp{}
type UserSignUpDataBody struct {
Username string `json:"username"`
Password string `json:"password"`
}
userSignup := UserSignUpDataBody{}
err := json.NewDecoder(r.Body).Decode(&userSignup)
if err != nil {
@@ -58,13 +57,13 @@ func handleUserSignUp(w http.ResponseWriter, r *http.Request) {
})
}
type UserSignin struct {
Username string `json:"username"`
Password string `json:"password"`
}
func handleUserSignIn(w http.ResponseWriter, r *http.Request) {
userSignin := UserSignin{}
type UserSigninDataBody struct {
Username string `json:"username"`
Password string `json:"password"`
}
userSignin := UserSigninDataBody{}
err := json.NewDecoder(r.Body).Decode(&userSignin)
if err != nil {
@@ -75,16 +74,11 @@ func handleUserSignIn(w http.ResponseWriter, r *http.Request) {
user, err := store.GetUserByUsernameAndPassword(userSignin.Username, userSignin.Password)
if err != nil {
if err == sql.ErrNoRows {
json.NewEncoder(w).Encode(Response{
Succeed: false,
Message: "Username and password not allowed",
Data: nil,
})
} else {
e.ErrorHandler(w, "DATABASE_ERROR", err.Error())
}
json.NewEncoder(w).Encode(Response{
Succeed: false,
Message: "Username and password not allowed",
Data: nil,
})
return
}
@@ -218,7 +212,7 @@ func handleGithubAuthCallback(w http.ResponseWriter, r *http.Request) {
user, err := store.GetUserByGithubName(githubUser.Login)
if err == sql.ErrNoRows {
if err != nil {
username := githubUser.Name
usernameUsable, _ := store.CheckUsernameUsable(username)
for !usernameUsable {

View File

@@ -5,6 +5,9 @@ var Codes = map[string]int{
"REQUEST_BODY_ERROR": 40001,
"UPLOAD_FILE_ERROR": 40002,
"NOT_FOUND": 40400,
"USER_NOT_FOUND": 40401,
"RESOURCE_NOT_FOUND": 40402,
"DATABASE_ERROR": 50001,
}

View File

@@ -29,14 +29,14 @@ func handleGetMyMemos(w http.ResponseWriter, r *http.Request) {
})
}
type CreateMemo struct {
Content string `json:"content"`
}
func handleCreateMemo(w http.ResponseWriter, r *http.Request) {
userId, _ := GetUserIdInSession(r)
createMemo := CreateMemo{}
type CreateMemoDataBody struct {
Content string `json:"content"`
}
createMemo := CreateMemoDataBody{}
err := json.NewDecoder(r.Body).Decode(&createMemo)
if err != nil {

View File

@@ -26,23 +26,23 @@ func handleGetMyQueries(w http.ResponseWriter, r *http.Request) {
})
}
type QueryPut struct {
Title string `json:"title"`
Querystring string `json:"querystring"`
}
func handleCreateQuery(w http.ResponseWriter, r *http.Request) {
userId, _ := GetUserIdInSession(r)
queryPut := QueryPut{}
err := json.NewDecoder(r.Body).Decode(&queryPut)
type CreateQueryDataBody struct {
Title string `json:"title"`
Querystring string `json:"querystring"`
}
queryData := CreateQueryDataBody{}
err := json.NewDecoder(r.Body).Decode(&queryData)
if err != nil {
e.ErrorHandler(w, "REQUEST_BODY_ERROR", "Bad request")
return
}
query, err := store.CreateNewQuery(queryPut.Title, queryPut.Querystring, userId)
query, err := store.CreateNewQuery(queryData.Title, queryData.Querystring, userId)
if err != nil {
e.ErrorHandler(w, "DATABASE_ERROR", err.Error())

View File

@@ -93,7 +93,7 @@ func handleGetResource(w http.ResponseWriter, r *http.Request) {
resource, err := store.GetResourceByIdAndFilename(resourceId, filename)
if err != nil {
e.ErrorHandler(w, "DATABASE_ERROR", err.Error())
e.ErrorHandler(w, "RESOURCE_NOT_FOUND", err.Error())
return
}

View File

@@ -15,7 +15,7 @@ func handleGetMyUserInfo(w http.ResponseWriter, r *http.Request) {
user, err := store.GetUserById(userId)
if err != nil {
e.ErrorHandler(w, "DATABASE_ERROR", err.Error())
e.ErrorHandler(w, "USER_NOT_FOUND", err.Error())
return
}
@@ -92,12 +92,12 @@ func handleRefreshUserOpenId(w http.ResponseWriter, r *http.Request) {
})
}
type CheckUsername struct {
Username string
}
func handleCheckUsername(w http.ResponseWriter, r *http.Request) {
checkUsername := CheckUsername{}
type CheckUsernameDataBody struct {
Username string
}
checkUsername := CheckUsernameDataBody{}
err := json.NewDecoder(r.Body).Decode(&checkUsername)
if err != nil {
@@ -119,13 +119,13 @@ func handleCheckUsername(w http.ResponseWriter, r *http.Request) {
})
}
type ValidPassword struct {
Password string
}
func handleValidPassword(w http.ResponseWriter, r *http.Request) {
type ValidPasswordDataBody struct {
Password string
}
userId, _ := GetUserIdInSession(r)
validPassword := ValidPassword{}
validPassword := ValidPasswordDataBody{}
err := json.NewDecoder(r.Body).Decode(&validPassword)
if err != nil {