fix bad return format of /racs/getfaillist api

This commit is contained in:
r0n1n7an 2024-11-21 17:17:14 +08:00
parent 85ea3a719d
commit 9950e7d6ab
2 changed files with 18 additions and 12 deletions

View File

@ -581,10 +581,24 @@ func handleRacsGetFailList(w http.ResponseWriter, r *http.Request) {
rst := racs.GetFailList(cfg, logger, addr, uri)
rpl := strings.NewReplacer(
"map[string]string", "",
"map[int]map[string]string", "",
"map[string]interface {}", "",
"[]{", "[",
"}},", "}],",
)
if rst["List"] != nil {
jsonData, err := json.MarshalIndent(rst, "", "\t")
if err != nil {
rst["Result"] = "NG"
rst["ErrMsg"] = "racs.HandleGetFailList: " + err.Error()
logger.Printf("[ERR] %s; %s; %s\r\n", addr, uri, rst["ErrMsg"])
}
w.WriteHeader(http.StatusInternalServerError)
fmt.Fprintf(w, "%v", rpl.Replace(string(jsonData)))
return
}
w.WriteHeader(http.StatusOK)
fmt.Fprintf(w, "%v", rpl.Replace(fmt.Sprintf("%s", rst)))
fmt.Fprintf(w, "%v", rpl.Replace(fmt.Sprintf("%#v", rst)))
}
func parseReqParams(r *http.Request) (map[string]string, error) {

View File

@ -3,7 +3,6 @@ package racs
import (
"APIServer/cnf"
"database/sql"
"encoding/json"
"fmt"
"log"
@ -106,7 +105,7 @@ func (r *RACS) Outbound(cfg cnf.Cfg, logger *log.Logger, addr string, uri string
return rst
}
func (r *RACS) GetFailList(cfg cnf.Cfg, logger *log.Logger, addr string, uri string) interface{} {
func (r *RACS) GetFailList(cfg cnf.Cfg, logger *log.Logger, addr string, uri string) map[string]interface{} {
rst := map[string]interface{}{"Result": "OK", "ErrMsg": ""}
dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s",
cfg.MySQL.User,
@ -160,12 +159,5 @@ func (r *RACS) GetFailList(cfg cnf.Cfg, logger *log.Logger, addr string, uri str
list = append(list, row)
}
rst["List"] = list
jsonData, err := json.Marshal(rst)
if err != nil {
rst["Result"] = "NG"
rst["ErrMsg"] = "racs.GetFailList: " + err.Error()
logger.Printf("[ERR] %s; %s; %s\r\n", addr, uri, rst["ErrMsg"])
return rst
}
return jsonData
return rst
}