javascript - Ext.encode() 部分退出

标签 javascript json extjs

我一直在观察 Ext 3 构建的某个页面负责将格式错误的 JSON 发送到 C# 处理程序。 95% 以上的情况下,JSON 都是正确的。但有时错误日志显示处理程序收到类似这样的内容(显然,中间缩短了):

appraisal = {"Id":"1234" [...] "rpb":false,"ex"%3

换句话说,它会用 %X 生成 mid-JSON。 X 始终对应于应该存在的字符:%3 是冒号,%2 是右方括号。它们看起来像 URL 编码,但其实不然。我不知道它们是什么。故障随机发生。

JSON 由 Ext.encode() 编码,如下所示:

var options = {
    params: {
        action: 'Save',
        objData: Ext.encode(myObject.data)
    }
};
SaveObj(options);

这一定是encode()的错误,因为对象本身很好,并且日志表明处理程序收到了该形式的错误JSON。但这是encode()的错吗?可以采取什么措施来防止这种情况发生?

最佳答案

令人惊讶的是,这是一个网络问题,而不是 ExtJS 的错误。我们的一台服务器在传输过程中终止了 < 1% 的请求。

对于那些查看此帖子寻求帮助的人:抱歉,答案相当令人不满意。不过,我确实推荐我收到的建议作为可能的解决方案!

关于javascript - Ext.encode() 部分退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7033939/

相关文章:

javascript - 表单弹出框按钮操作链接

javascript - Number 作为对象和 Number 作为构造函数之间的区别

python 版本与 json.dumps 冲突

extjs - 无法通过绑定(bind)到 Ext.js 6 中的数据属性来有条件地隐藏选项卡

php - php中的确认对话框

php - 我如何在wordpress页面模板中隐藏iframe的元素

java - Java 中的 JSON header 数组

javascript - 在控制台中显示 JSON 键

c# - 解析器错误消息 : Could not create type 'xxx'

javascript - CompositeField 上的自定义 FieldLabel