Commit 5ae5e5b1748fdbadfb1b13dd17a4b48f2264cbbb

Authored by 陆恒
1 parent 02fdd34b
Exists in master

提交接口

src/HttpServer/logic/datadef.go
... ... @@ -126,6 +126,16 @@ type InviteWorkResp struct {
126 126 }
127 127  
128 128  
  129 +type SaveDataBackupReq struct{
  130 + Uuid int `json:"uuid"`
  131 + Value string `json:"value"`
  132 +}
  133 +
  134 +
  135 +type SaveDataBackupResp struct {
  136 + Code int `json:"code"`
  137 + Message string `json:"message"`
  138 +}
129 139  
130 140  
131 141 type FetchInviteReq struct{
... ...
src/HttpServer/logic/httpserver.go
... ... @@ -83,6 +83,7 @@ func startServerHttpServe() {
83 83 http.HandleFunc("/catcafe/user/fetchInviteReward",FetchInviteReward) //领取邀请奖励
84 84 http.HandleFunc("/catcafe/user/enterInvite",EnterInvite) //别的玩家(新玩家)通过邀请连接进来
85 85 http.HandleFunc("/catcafe/user/queryInviteWork",QueryInviteWork) //获取邀请打工列表
  86 + http.HandleFunc("/catcafe/user/saveDataBackup",SaveDataBackup) //保存玩家数据 备份数据接口
86 87  
87 88  
88 89 err := http.ListenAndServe(conf.GetServerHttpAddrConf(), nil)
... ... @@ -229,6 +230,18 @@ func ClearData(w http.ResponseWriter, r *http.Request) {
229 230 }
230 231  
231 232  
  233 +func SaveDataBackup(w http.ResponseWriter, r *http.Request) {
  234 +
  235 + result, _ := ioutil.ReadAll(r.Body)
  236 + r.Body.Close()
  237 +
  238 + s := string(result)
  239 + logger.Info("SaveDataBackup , body:%v,uuid=%v", s)
  240 +
  241 + HandleSaveDataBackup(w,s)
  242 +
  243 +}
  244 +
232 245 func QueryInviteWork(w http.ResponseWriter, r *http.Request) {
233 246  
234 247 result, _ := ioutil.ReadAll(r.Body)
... ...
src/HttpServer/logic/logic.go
... ... @@ -274,6 +274,36 @@ func HandleQueryInvite(w http.ResponseWriter, data string) {
274 274 }
275 275  
276 276  
  277 +func HandleSaveDataBackup(w http.ResponseWriter, data string) {
  278 + SetHeader(w)
  279 + var resp SaveDataBackupResp
  280 + resp.Code = 0
  281 + var rdata SaveDataBackupReq
  282 + err := json.Unmarshal([]byte(data), &rdata)
  283 + for {
  284 + if err != nil {
  285 + logger.Error("HandleQueryInviteWork json unmarshal failed=%v", err)
  286 + resp.Code = ERROR_JSONUNMASHFAILED
  287 + resp.Message = "json unmarshal failed"
  288 + break
  289 + }
  290 +
  291 + err = redishandler.GetRedisClient().HSet(redis.USER_BACKUP_DATA,strconv.Itoa(rdata.Uuid),rdata.Value)
  292 + if err != nil {
  293 + logger.Error("HandleQueryInviteWork save failed=%v", err)
  294 + resp.Code = ERROR_SRVDB_FAILED
  295 + resp.Message = "ERROR_SRVDB_FAILED"
  296 + break
  297 + }
  298 +
  299 + resp.Code = ERROR_OK
  300 + break
  301 + }
  302 +
  303 + //回包
  304 + respstr, _ := json.Marshal(&resp)
  305 + fmt.Fprint(w, string(respstr))
  306 +}
277 307  
278 308 func HandleQueryInviteWork(w http.ResponseWriter, data string) {
279 309  
... ...
src/common/redis/def.go
... ... @@ -19,4 +19,5 @@ const (
19 19 USER_INVITEREWARD_FETCH_REWARD = "CATCAFE_USER_INVITEREWARD_FETCH_REWARD" //玩家邀请记录 hset key + uuid field为被邀请者的uuid value为领取状态
20 20 USER_BEINVITE_UUIDRELATION = "CATCAFE_USER_BEINVITE_UUIDRELATION" //玩家被邀请关系记录表
21 21 USER_INVITEWORK_RELATION = "CATCAFE_USER_INVITEWORK_RELATION" //玩家被邀请打工记录表
  22 + USER_BACKUP_DATA = "CATCAFE_USER_BACKUP_DATA" //玩家数据保存的备份
22 23 )
... ...