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/PlayerFriend.py |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFriend.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFriend.py
index 68c9778..e65872c 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFriend.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFriend.py
@@ -28,7 +28,7 @@
 import copy
 import PlayerViewCache
 import PlayerTeam
-import json
+import cPickle
 
 #---------------------------------------------------------------------
 
@@ -82,7 +82,7 @@
             #玩家的数据没有缓存过
             PlayerControl.NotifyCode(curPlayer, 'Friend_OffLine')
             return
-        cacheDict = json.loads(curCache.GetPropData())
+        cacheDict = cPickle.loads(curCache.GetPropData())
         tagLV = cacheDict["LV"]
     else:
         tagLV = tagPlayer.GetLV()
@@ -324,7 +324,7 @@
         PlayerControl.NotifyCode(srcPlayer, 'Friend_MakeFriend', [curPlayer.GetName()])
         #srcPlayer.MapServer_QueryPlayerResult(0, 0, 'AddFriendSucceed', "", 0)
     else:
-        cacheDict = json.loads(curCache.GetPropData())
+        cacheDict = cPickle.loads(curCache.GetPropData())
         PlayerControl.NotifyCode(curPlayer, 'Friend_MakeFriend', [cacheDict['Name']])  
         # 记录等对方上线通知地图,任务等会用到触发逻辑,通用记录次数即可, MapServer_SyncFriendInfo为具体的好友数量,根据策划需求制作
         pass
@@ -396,7 +396,7 @@
         curCache = PlayerViewCache.ViewCacheMgr.FindCache(tagID)
         if not curCache:
             return
-        cacheDict = json.loads(curCache.GetPropData())
+        cacheDict = cPickle.loads(curCache.GetPropData())
         playerName = cacheDict['Name']
     else:
         playerName = tagPlayer.GetName()

--
Gitblit v1.8.0