Commit 5ae5e5b1748fdbadfb1b13dd17a4b48f2264cbbb
1 parent
02fdd34b
Exists in
master
提交接口
Showing
4 changed files
with
54 additions
and
0 deletions
Show diff stats
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 | ) | ... | ... |