From e1dbd84e697445ea0c5f73075f56f97e5849ae53 Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期五, 08 三月 2019 14:58:15 +0800 Subject: [PATCH] 6328 【后端】优化代码eval - json只适合字符串序列化,并且尽量用于非中文;建议使用cPickle 的dumps 和loads,协议用2,可支持所有类型,缺点为序列化后不可阅读 --- ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerGeTui.py | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerGeTui.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerGeTui.py index 4daf6d4..ca043b2 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerGeTui.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerGeTui.py @@ -25,6 +25,7 @@ import PyDataManager import time import json +import cPickle # VIP权限 Def_Onoff_VIPCount = 5 ( @@ -282,14 +283,14 @@ if curPlayer and not PlayerControl.GetIsTJG(curPlayer): continue - recordDict = json.loads(bossAttentionData.RecordData) - if recordDict.get(str(bossID), 0) in [0, 9]: + recordDict = cPickle.loads(bossAttentionData.RecordData) + if recordDict.get(bossID, 0) in [0, 9]: #0-默认未关注, 1-主动关注, 2-自动关注, 9-主动取消关注 continue curCache = PlayerViewCache.ViewCacheMgr.FindCache(playerID) if not curCache: continue - cacheDict = json.loads(curCache.GetPropData()) + cacheDict = cPickle.loads(curCache.GetPropData()) if not CheckCanGeTui(cacheDict, geTuiType): # 过滤个推 continue @@ -327,7 +328,7 @@ if not curCache: return - cacheDict = json.loads(curCache.GetPropData()) + cacheDict = cPickle.loads(curCache.GetPropData()) if not CheckCanGeTui(cacheDict, Def_Onoff_Chat): # 过滤个推 return -- Gitblit v1.8.0