2.4.6 ios与模拟器websocket接收不全 、json解析 Uncaught SyntaxError: Unexpected end of JSON input, location

我在2.4.5版本中并不会出现无法解析json的情况 升级到2.4.6后使用JSON.parse()方法解析json文件就报错Uncaught SyntaxError: Unexpected end of JSON input, location 但单独只在ios端是太长了吗? 引擎组是否在2.4.6修改了这个方法。一样的代码安卓端却没有任何问题。。。帮忙解决一下。

你好,方便提供个简单的 demo 吗?

应该是长度上有问题
这串json 是服务端使用WebSocket传到前端的
目前我的项目中同样的代码
安卓打印的是:
{“msgType”:“msgContestAnswer”,“msgData”:{“question”:“7”,“totalQuestionNum”:10,“pUserHp”:70,“nextType”:2,“type”:2,“anwserList”:[{“answerId”:192842,“context”:“3”},{“answerId”:360286,“context”:“1”},{“answerId”:251497,“context”:“2”}],“nextQuestionId”:“473229160945373184”,“userId”:“0”,“roomId”:“579829714769305600”,“cUserHp”:70,“answerSize”:6,“picUrl”:"",“questionIndex”:5,“answer”:"",“context”:"",“tag”:“检索”,“pUserId”:“446083190810640384”,“questionType”:0,“matchId”:0}}
ios打印出来的是:
{“msgType”:“msgContestAnswer”,“msgData”:{“question”:“7”,“totalQuestionNum”:10,“pUserHp”:70,“nextType”:2,“type”:2,“anwserList”:[{“answerId”:192842,“context”:“3”},{“answerId”:360286,“context”:“1”},{“answerId”:251497,“context”:“2”}],“nextQuestionId”:“473229160945373184”,“userId”:“0”,“roomId”:“579829714769305600”,“cUserHp”:70,“answerSize”:6,“picUrl”:"",“questionIndex”:5,“answer”:"",“context”:"",“tag”:“检索”,“pUserId”:“446083190810640384”,“questionType”:0,“matchId”

ios少了:0}} 这4个字符;导致json解析出错。。
我查询试一下是不是WebSocket 接受上的问题

升级2.4.6后websocket原生接收较长字符串会接收不全 、网页没有问题、模拟器与iOS就百分百接收不全、不知为何安卓也没有问题. 这个给不了demo 我试一天了要.看来得降回2.4.5

是的,我用3.3也遇到了,网页安卓没问题,模拟器和苹果有问题。同一工程2.45没问题

你有什么临时的解决方案吗? 降版本又要重新接sdk。。。。。

暂时没有,我是工程准备升级3.3,刚试第一个界面发现的,我的工程都有低版本备份的,所以不影响

试试合并下这个PR,长度计算代码没有同步进 2.4.6

3.3.0和3.3.1也有这个问题,也需要修复

该主题在最后一个回复创建后14天后自动关闭。不再允许新的回复。

合并引擎 PR 以及定制模拟器后,问题还存在吗?

哪里有定制模拟器方案 修改那行底层代码 是解决了ios端的问题 模拟器 怎么改?