diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java index e0b86bd1d..705a6343e 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java @@ -967,6 +967,11 @@ public class PlayerLogic { } public CrossArenaManager getCrossArenaManagerData(CSPlayer csPlayer){ String rpcString = RedisUtil.getInstence().getObject(RedisKey.LOGIC_SERVER_INFO, String.valueOf(csPlayer.getServerId()), String.class, -1); + String[] split = rpcString.split(":"); + if (split.length < 4){ + LOGGER.error("获取玩家rpc地址,长度错误,rpc:{},玩家id:{},服务器id:{}",rpcString,csPlayer.getUserId(),csPlayer.getServerId()); + return null; + } String ip = rpcString.split(":")[0]; String port = rpcString.split(":")[3]; //rpc 数据调用 @@ -983,7 +988,7 @@ public class PlayerLogic { rPCClient = ClientAdapterPo.getClientAdapterPo(sb.toString()); crossArenaManager = rPCClient.getClient().getHeroManagerInfo(uid); }catch (Exception e) { - LOGGER.info("callback=>", e); + LOGGER.error("callback=>", e); } finally { if(rPCClient != null){ rPCClient.returnObject(sb.toString());