关于Android的bug:debug修复JS

时间:2012-07-20 18:33:40

标签: javascript android asp.net cassette

我有一个奇怪的情况,我的Javascript在Android 2.x设备上以不可预测的方式失败。

一些描述将是:

  • Javascript应用程序的某些部分可以正常工作,而有些部分却没有。这些“部分”被分解为具有单独构造函数的模块。

  • Javascript应用程序在一台服务器上失败,而在我们自己的网络中失败。

  • Javascript应用程序有时会在页面上的多个脚本文件中抛出ILLEGAL TOKEN错误,但应用程序不会在任何桌面客户端上抛出任何错误,并且被认为在语法上是正确的。

要修复此问题,我输入about:debug到地址栏并刷新。繁荣。突然,完整的Javascript应用程序正常运行,包括每个模块和每个服务器。

此外,现在Android“记住”了这个,并且缺陷在90%的时间里都消失了,但是偶尔会出现一段时间。

这是一个ASP.NET Episerver堆栈,我们使用Cassette连接和缩小大约12-20个脚本,大约4个“最终”脚本块被呈现到页面。

有人遇到过这样的事吗?我唯一的策略是将脚本分解为几个额外的HTTP请求以减慢解析器的速度......但我真的不知道这里发生了什么。

谢谢!

1 个答案:

答案 0 :(得分:0)

经过大量测试后,我们似乎已经修复了这个错误。这是Android 2.x使用以下标题下载Javascript文件的问题:

Content-Type: deflate

我们将其更改为:

Content-Type: gzip

很奇怪,为什么Android 2.x在deflate配置和Javascript文件方面存在问题。