optimize the amount data sent from the backend
This commit is contained in:
@@ -16,7 +16,7 @@ func ListFrame(writer http.ResponseWriter, request *http.Request, params httprou
|
||||
gdb := database.Connect()
|
||||
defer database.Close(gdb)
|
||||
|
||||
var frame []models.Frame
|
||||
var frames []models.Frame
|
||||
|
||||
queryParams := request.URL.Query()
|
||||
|
||||
@@ -40,14 +40,20 @@ func ListFrame(writer http.ResponseWriter, request *http.Request, params httprou
|
||||
return
|
||||
}
|
||||
|
||||
result := gdb.Model(&models.Frame{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&frame)
|
||||
result := gdb.Model(&models.Frame{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&frames)
|
||||
if result.Error != nil {
|
||||
utils.JSONErrorOutput(writer, http.StatusBadRequest, result.Error.Error())
|
||||
return
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(frame)
|
||||
|
||||
var framesPublic []models.FramePublic
|
||||
for _, frame := range frames {
|
||||
framesPublic = append(framesPublic, models.FramePublic{Frame: frame})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(framesPublic)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -67,7 +73,7 @@ func GetFrame(writer http.ResponseWriter, request *http.Request, params httprout
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(frame)
|
||||
json.NewEncoder(writer).Encode(models.FramePublic{Frame: frame})
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -57,7 +57,13 @@ func ListGame(writer http.ResponseWriter, request *http.Request, params httprout
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(games)
|
||||
|
||||
var gamesPublic []models.GamePublic
|
||||
for _, game := range games {
|
||||
gamesPublic = append(gamesPublic, models.GamePublic{Game: game})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(gamesPublic)
|
||||
return
|
||||
}
|
||||
}
|
||||
@@ -78,7 +84,7 @@ func GetGame(writer http.ResponseWriter, request *http.Request, params httproute
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(game)
|
||||
json.NewEncoder(writer).Encode(models.GamePublic{Game: game})
|
||||
return
|
||||
}
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@ func ListGodotVersion(writer http.ResponseWriter, request *http.Request, params
|
||||
gdb := database.Connect()
|
||||
defer database.Close(gdb)
|
||||
|
||||
var godotVersion []models.GodotVersion
|
||||
var godotVersions []models.GodotVersion
|
||||
|
||||
queryParams := request.URL.Query()
|
||||
|
||||
@@ -44,14 +44,20 @@ func ListGodotVersion(writer http.ResponseWriter, request *http.Request, params
|
||||
return
|
||||
}
|
||||
|
||||
result := gdb.Model(&models.GodotVersion{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&godotVersion)
|
||||
result := gdb.Model(&models.GodotVersion{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&godotVersions)
|
||||
if result.Error != nil {
|
||||
utils.JSONErrorOutput(writer, http.StatusBadRequest, result.Error.Error())
|
||||
return
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(godotVersion)
|
||||
|
||||
var godotVersionsPublic []models.GodotVersionPublic
|
||||
for _, godotversion := range godotVersions {
|
||||
godotVersionsPublic = append(godotVersionsPublic, models.GodotVersionPublic{GodotVersion: godotversion})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(godotVersionsPublic)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,7 +77,7 @@ func GetGodotVersion(writer http.ResponseWriter, request *http.Request, params h
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(godotVersion)
|
||||
json.NewEncoder(writer).Encode(models.GodotVersionPublic{GodotVersion: godotVersion})
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@ func ListLevel(writer http.ResponseWriter, request *http.Request, params httprou
|
||||
gdb := database.Connect()
|
||||
defer database.Close(gdb)
|
||||
|
||||
var level []models.Level
|
||||
var levels []models.Level
|
||||
|
||||
queryParams := request.URL.Query()
|
||||
|
||||
@@ -36,14 +36,20 @@ func ListLevel(writer http.ResponseWriter, request *http.Request, params httprou
|
||||
return
|
||||
}
|
||||
|
||||
result := gdb.Model(&models.Level{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&level)
|
||||
result := gdb.Model(&models.Level{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&levels)
|
||||
if result.Error != nil {
|
||||
utils.JSONErrorOutput(writer, http.StatusBadRequest, result.Error.Error())
|
||||
return
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(level)
|
||||
|
||||
var levelsPublic []models.LevelPublic
|
||||
for _, level := range levels {
|
||||
levelsPublic = append(levelsPublic, models.LevelPublic{Level: level})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(levelsPublic)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -63,7 +69,7 @@ func GetLevel(writer http.ResponseWriter, request *http.Request, params httprout
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(level)
|
||||
json.NewEncoder(writer).Encode(models.LevelPublic{Level: level})
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@ func ListObject(writer http.ResponseWriter, request *http.Request, params httpro
|
||||
gdb := database.Connect()
|
||||
defer database.Close(gdb)
|
||||
|
||||
var object []models.Object
|
||||
var objects []models.Object
|
||||
|
||||
queryParams := request.URL.Query()
|
||||
|
||||
@@ -42,14 +42,20 @@ func ListObject(writer http.ResponseWriter, request *http.Request, params httpro
|
||||
return
|
||||
}
|
||||
|
||||
result := gdb.Model(&models.Object{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&object)
|
||||
result := gdb.Model(&models.Object{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&objects)
|
||||
if result.Error != nil {
|
||||
utils.JSONErrorOutput(writer, http.StatusBadRequest, result.Error.Error())
|
||||
return
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(object)
|
||||
|
||||
var objectsPublic []models.ObjectPublic
|
||||
for _, object := range objects {
|
||||
objectsPublic = append(objectsPublic, models.ObjectPublic{Object: object})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(objectsPublic)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -69,7 +75,7 @@ func GetObject(writer http.ResponseWriter, request *http.Request, params httprou
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(object)
|
||||
json.NewEncoder(writer).Encode(models.ObjectPublic{Object: object})
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@ func ListObjectName(writer http.ResponseWriter, request *http.Request, params ht
|
||||
gdb := database.Connect()
|
||||
defer database.Close(gdb)
|
||||
|
||||
var objectName []models.ObjectName
|
||||
var objectNames []models.ObjectName
|
||||
|
||||
queryParams := request.URL.Query()
|
||||
|
||||
@@ -36,14 +36,20 @@ func ListObjectName(writer http.ResponseWriter, request *http.Request, params ht
|
||||
return
|
||||
}
|
||||
|
||||
result := gdb.Model(&models.ObjectName{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&objectName)
|
||||
result := gdb.Model(&models.ObjectName{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&objectNames)
|
||||
if result.Error != nil {
|
||||
utils.JSONErrorOutput(writer, http.StatusBadRequest, result.Error.Error())
|
||||
return
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(objectName)
|
||||
|
||||
var objectNamesPublic []models.ObjectNamePublic
|
||||
for _, objectname := range objectNames {
|
||||
objectNamesPublic = append(objectNamesPublic, models.ObjectNamePublic{ObjectName: objectname})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(objectNamesPublic)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -63,7 +69,7 @@ func GetObjectName(writer http.ResponseWriter, request *http.Request, params htt
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(objectName)
|
||||
json.NewEncoder(writer).Encode(models.ObjectNamePublic{ObjectName: objectName})
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@ func ListObjectState(writer http.ResponseWriter, request *http.Request, params h
|
||||
gdb := database.Connect()
|
||||
defer database.Close(gdb)
|
||||
|
||||
var objectState []models.ObjectState
|
||||
var objectStates []models.ObjectState
|
||||
|
||||
queryParams := request.URL.Query()
|
||||
|
||||
@@ -36,14 +36,20 @@ func ListObjectState(writer http.ResponseWriter, request *http.Request, params h
|
||||
return
|
||||
}
|
||||
|
||||
result := gdb.Model(&models.ObjectState{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&objectState)
|
||||
result := gdb.Model(&models.ObjectState{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&objectStates)
|
||||
if result.Error != nil {
|
||||
utils.JSONErrorOutput(writer, http.StatusBadRequest, result.Error.Error())
|
||||
return
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(objectState)
|
||||
|
||||
var objectStatesPublic []models.ObjectStatePublic
|
||||
for _, objectstate := range objectStates {
|
||||
objectStatesPublic = append(objectStatesPublic, models.ObjectStatePublic{ObjectState: objectstate})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(objectStatesPublic)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -63,7 +69,7 @@ func GetObjectState(writer http.ResponseWriter, request *http.Request, params ht
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(objectState)
|
||||
json.NewEncoder(writer).Encode(models.ObjectStatePublic{ObjectState: objectState})
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@ func ListOS(writer http.ResponseWriter, request *http.Request, params httprouter
|
||||
gdb := database.Connect()
|
||||
defer database.Close(gdb)
|
||||
|
||||
var os []models.OS
|
||||
var oses []models.OS
|
||||
|
||||
queryParams := request.URL.Query()
|
||||
|
||||
@@ -36,14 +36,20 @@ func ListOS(writer http.ResponseWriter, request *http.Request, params httprouter
|
||||
return
|
||||
}
|
||||
|
||||
result := gdb.Model(&models.OS{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&os)
|
||||
result := gdb.Model(&models.OS{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&oses)
|
||||
if result.Error != nil {
|
||||
utils.JSONErrorOutput(writer, http.StatusBadRequest, result.Error.Error())
|
||||
return
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(os)
|
||||
|
||||
var osesPublic []models.OSPublic
|
||||
for _, os := range oses {
|
||||
osesPublic = append(osesPublic, models.OSPublic{OS: os})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(osesPublic)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -63,7 +69,7 @@ func GetOS(writer http.ResponseWriter, request *http.Request, params httprouter.
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(os)
|
||||
json.NewEncoder(writer).Encode(models.OSPublic{OS: os})
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@ func ListPlayer(writer http.ResponseWriter, request *http.Request, params httpro
|
||||
gdb := database.Connect()
|
||||
defer database.Close(gdb)
|
||||
|
||||
var player []models.Player
|
||||
var players []models.Player
|
||||
|
||||
queryParams := request.URL.Query()
|
||||
|
||||
@@ -38,14 +38,20 @@ func ListPlayer(writer http.ResponseWriter, request *http.Request, params httpro
|
||||
return
|
||||
}
|
||||
|
||||
result := gdb.Model(&models.Player{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&player)
|
||||
result := gdb.Model(&models.Player{}).Where(whereClause).Order("ID asc").Limit(limit).Offset(offset).Find(&players)
|
||||
if result.Error != nil {
|
||||
utils.JSONErrorOutput(writer, http.StatusBadRequest, result.Error.Error())
|
||||
return
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(player)
|
||||
|
||||
var playersPublic []models.PlayerPublic
|
||||
for _, player := range players {
|
||||
playersPublic = append(playersPublic, models.PlayerPublic{Player: player})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(playersPublic)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -65,7 +71,7 @@ func GetPlayer(writer http.ResponseWriter, request *http.Request, params httprou
|
||||
} else {
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(player)
|
||||
json.NewEncoder(writer).Encode(models.PlayerPublic{Player: player})
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -46,12 +46,15 @@ func ListUser(writer http.ResponseWriter, request *http.Request, params httprout
|
||||
utils.JSONErrorOutput(writer, http.StatusBadRequest, result.Error.Error())
|
||||
return
|
||||
} else {
|
||||
for i := range users {
|
||||
users[i].Password = ""
|
||||
}
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(users)
|
||||
|
||||
var usersPublic []models.UserPublic
|
||||
for _, user := range users {
|
||||
usersPublic = append(usersPublic, models.UserPublic{User: user})
|
||||
}
|
||||
|
||||
json.NewEncoder(writer).Encode(usersPublic)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -69,10 +72,9 @@ func GetUser(writer http.ResponseWriter, request *http.Request, params httproute
|
||||
writer.WriteHeader(http.StatusNotFound)
|
||||
return
|
||||
} else {
|
||||
user.Password = ""
|
||||
writer.Header().Set("Content-Type", "application/json")
|
||||
writer.WriteHeader(http.StatusOK)
|
||||
json.NewEncoder(writer).Encode(user)
|
||||
json.NewEncoder(writer).Encode(models.UserPublic{User: user})
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user