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