问题情况
在游戏中我需要记录一些玩家的状态需要存到服务器去,所以需要将一些状态保存为字符串存起来,但是当我将table存储时发现会报错,报错为Cannot serialise, excessive nesting (1001),经过查找资料寻找解决,记录一下。
原因
研究我的Table发现,我的表是一个不连续的表,导致在编码Json时不能正常读取,所以需要将表改为连续的或者修改为类似C#的dictionary类型,就可以。
扩展内容
我在后面的过程中增加的表的内容,发现又有同样的报错,检查发现原来是服务器发过来的数据存储导致的,我们使用的proto协议,但是在底层已经重写了table的内容,我以为我收到的表结构是连续的,但是实际上这个表不是一个连续的表,我就自己重新写一个表去复制内容,再转Json就好了,特此记录。
本文记录了在游戏开发中遇到的LUA表转换为Json格式时出现的'Cannot serialise,excessivenesting(1001)'错误。问题源于非连续的LUA表结构,解决方案包括将表转换为连续或使用类似C#的dictionary类型。在后续处理中,发现错误源于服务器返回的proto协议数据导致的非连续表结构,通过重新构建表并转换解决了问题。
1万+

被折叠的 条评论
为什么被折叠?



