From 5ae5e5b1748fdbadfb1b13dd17a4b48f2264cbbb Mon Sep 17 00:00:00 2001 From: 陆恒 Date: Mon, 11 May 2020 15:00:52 +0800 Subject: [PATCH] 提交接口 --- src/HttpServer/logic/datadef.go | 10 ++++++++++ src/HttpServer/logic/httpserver.go | 13 +++++++++++++ src/HttpServer/logic/logic.go | 30 ++++++++++++++++++++++++++++++ src/common/redis/def.go | 1 + 4 files changed, 54 insertions(+), 0 deletions(-) diff --git a/src/HttpServer/logic/datadef.go b/src/HttpServer/logic/datadef.go index 40f0492..7f9b896 100644 --- a/src/HttpServer/logic/datadef.go +++ b/src/HttpServer/logic/datadef.go @@ -126,6 +126,16 @@ type InviteWorkResp struct { } +type SaveDataBackupReq struct{ + Uuid int `json:"uuid"` + Value string `json:"value"` +} + + +type SaveDataBackupResp struct { + Code int `json:"code"` + Message string `json:"message"` +} type FetchInviteReq struct{ diff --git a/src/HttpServer/logic/httpserver.go b/src/HttpServer/logic/httpserver.go index 2bc8758..e3480ac 100644 --- a/src/HttpServer/logic/httpserver.go +++ b/src/HttpServer/logic/httpserver.go @@ -83,6 +83,7 @@ func startServerHttpServe() { http.HandleFunc("/catcafe/user/fetchInviteReward",FetchInviteReward) //领取邀请奖励 http.HandleFunc("/catcafe/user/enterInvite",EnterInvite) //别的玩家(新玩家)通过邀请连接进来 http.HandleFunc("/catcafe/user/queryInviteWork",QueryInviteWork) //获取邀请打工列表 + http.HandleFunc("/catcafe/user/saveDataBackup",SaveDataBackup) //保存玩家数据 备份数据接口 err := http.ListenAndServe(conf.GetServerHttpAddrConf(), nil) @@ -229,6 +230,18 @@ func ClearData(w http.ResponseWriter, r *http.Request) { } +func SaveDataBackup(w http.ResponseWriter, r *http.Request) { + + result, _ := ioutil.ReadAll(r.Body) + r.Body.Close() + + s := string(result) + logger.Info("SaveDataBackup , body:%v,uuid=%v", s) + + HandleSaveDataBackup(w,s) + +} + func QueryInviteWork(w http.ResponseWriter, r *http.Request) { result, _ := ioutil.ReadAll(r.Body) diff --git a/src/HttpServer/logic/logic.go b/src/HttpServer/logic/logic.go index dde09f9..751a8a5 100644 --- a/src/HttpServer/logic/logic.go +++ b/src/HttpServer/logic/logic.go @@ -274,6 +274,36 @@ func HandleQueryInvite(w http.ResponseWriter, data string) { } +func HandleSaveDataBackup(w http.ResponseWriter, data string) { + SetHeader(w) + var resp SaveDataBackupResp + resp.Code = 0 + var rdata SaveDataBackupReq + err := json.Unmarshal([]byte(data), &rdata) + for { + if err != nil { + logger.Error("HandleQueryInviteWork json unmarshal failed=%v", err) + resp.Code = ERROR_JSONUNMASHFAILED + resp.Message = "json unmarshal failed" + break + } + + err = redishandler.GetRedisClient().HSet(redis.USER_BACKUP_DATA,strconv.Itoa(rdata.Uuid),rdata.Value) + if err != nil { + logger.Error("HandleQueryInviteWork save failed=%v", err) + resp.Code = ERROR_SRVDB_FAILED + resp.Message = "ERROR_SRVDB_FAILED" + break + } + + resp.Code = ERROR_OK + break + } + + //回包 + respstr, _ := json.Marshal(&resp) + fmt.Fprint(w, string(respstr)) +} func HandleQueryInviteWork(w http.ResponseWriter, data string) { diff --git a/src/common/redis/def.go b/src/common/redis/def.go index 0400e9b..2451683 100644 --- a/src/common/redis/def.go +++ b/src/common/redis/def.go @@ -19,4 +19,5 @@ const ( USER_INVITEREWARD_FETCH_REWARD = "CATCAFE_USER_INVITEREWARD_FETCH_REWARD" //玩家邀请记录 hset key + uuid field为被邀请者的uuid value为领取状态 USER_BEINVITE_UUIDRELATION = "CATCAFE_USER_BEINVITE_UUIDRELATION" //玩家被邀请关系记录表 USER_INVITEWORK_RELATION = "CATCAFE_USER_INVITEWORK_RELATION" //玩家被邀请打工记录表 + USER_BACKUP_DATA = "CATCAFE_USER_BACKUP_DATA" //玩家数据保存的备份 ) -- libgit2 0.21.0