From 8b0ae028998419e53bc71b77080042ae5c0b9f2e Mon Sep 17 00:00:00 2001 From: 陆恒 Date: Mon, 15 Jun 2020 10:57:18 +0800 Subject: [PATCH] 提交 --- src/HttpServer/logic/datadef.go | 14 ++++++++++++++ src/HttpServer/logic/httpserver.go | 22 ++++++++++++++++++++++ src/HttpServer/logic/logic.go | 45 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 81 insertions(+), 0 deletions(-) diff --git a/src/HttpServer/logic/datadef.go b/src/HttpServer/logic/datadef.go index cbd84ca..8082382 100644 --- a/src/HttpServer/logic/datadef.go +++ b/src/HttpServer/logic/datadef.go @@ -1,5 +1,19 @@ package logic +type TestAddCatReq struct { + Position int `json:"position"` + CatId int `json:"catId"` +} + +type TestAddCatData struct { +} + +type TestAddCatResp struct { + Code int `json:"code"` + Data TestAddCatData `json:"data"` + Message string `json:"message"` +} + type UserLoginReq struct { Lype int `json:"type"` UserId int `json:"userId"` diff --git a/src/HttpServer/logic/httpserver.go b/src/HttpServer/logic/httpserver.go index 82dbc6c..3e45f94 100644 --- a/src/HttpServer/logic/httpserver.go +++ b/src/HttpServer/logic/httpserver.go @@ -101,6 +101,10 @@ func CheckErr(err error) { } func startServerHttpServe() { + //test + http.HandleFunc("/api/test/addCat", TestaddCat) //增加猫 + + //real http.HandleFunc("/api/account/login", UserLogin) //登录 http.HandleFunc("/api/home/buy", DoBuyCat) //购买猫 http.HandleFunc("/api/home/synResource", GetUserData) //同步资源 @@ -1087,6 +1091,24 @@ func GetUserData(w http.ResponseWriter, r *http.Request) { HandlerGetUserData(w, s, Uuid) } +func TestaddCat(w http.ResponseWriter, r *http.Request) { + Uuid := 0 + if len(r.Header) > 0 { + Uuid, _ = strconv.Atoi(r.Header.Get("uid")) + } + if Uuid == 0 { + SetHeader(w) + return + } + result, _ := ioutil.ReadAll(r.Body) + r.Body.Close() + + s := string(result) + logger.Info("TestaddCat , body:%v,uuid=%v", s, Uuid) + + HandlerTestaddCat(w, s, Uuid) +} + func UserLogin(w http.ResponseWriter, r *http.Request) { //w.Header().Set("Access-Control-Allow-Origin", "*") //允许访问所有域 //w.Header().Set("Content-Type", "application/json") diff --git a/src/HttpServer/logic/logic.go b/src/HttpServer/logic/logic.go index 75d6492..e593dba 100644 --- a/src/HttpServer/logic/logic.go +++ b/src/HttpServer/logic/logic.go @@ -40,6 +40,51 @@ func SetHeader(w http.ResponseWriter) { } +func HandlerTestaddCat(w http.ResponseWriter, data string, uuid int) { + SetHeader(w) + var resp TestAddCatResp + resp.Code = 0 + resp.Message = "success" + var rdata TestAddCatReq + err := json.Unmarshal([]byte(data), &rdata) + if err != nil { + logger.Info("json decode HandlerTestaddCat data failed:%v,for:%v", err, data) + resp.Message = "json unmarshal failed" + resp.Code = 1 + respstr, _ := json.Marshal(&resp) + logger.Info("###HandlerLogin###rdata:%v", string(respstr)) + fmt.Fprint(w, string(respstr)) + return + } + + for { + + uinfo, err := GetUserInfo(strconv.Itoa(uuid)) + if err != nil || uinfo == nil { + logger.Error("HandlerTestaddCat getuserinfo failed=%v", err) + resp.Code = 1 + resp.Message = "get userinfo failed" + break + } + + if rdata.Position < 0 || rdata.Position > len(uinfo.PosInfo)-1 { + logger.Error("HandlerTestaddCat Position failed=%v", err) + resp.Code = 1 + resp.Message = "get Position failed" + break + } + + uinfo.PosInfo[rdata.Position].Cat = rdata.CatId + break + } + + //回包 + respstr, _ := json.Marshal(&resp) + fmt.Fprint(w, string(respstr)) + + logger.Info("###HandlerLogin###rdata:%v", string(respstr)) +} + func HandlerLogin(w http.ResponseWriter, data string, uuid int, token string) { SetHeader(w) var resp UserLoginResp -- libgit2 0.21.0