xmlhttp.send在使用清单文件时抛出异常

时间:2011-07-08 13:51:21

标签: ajax caching google-chrome safari manifest

我在Chrome和MobileSafari上遇到了一个奇怪的问题(在IE9上效果很好)

我有以下代码: var products;

function init()
    {
            var xmlhttp;
            if (window.XMLHttpRequest)
              {// code for IE7+, Firefox, Chrome, Opera, Safari
              xmlhttp=new XMLHttpRequest();
              }
            else
              {// code for IE6, IE5
              xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
              }

            xmlhttp.open("GET","ipad/products.php",false);
            xmlhttp.send();
            products = JSON.parse(xmlhttp.responseText);
            //alert(products.products[0].title);
            getProduct(1);
    }

init由body onload函数调用。

另外,我使用manifest来缓存一些文件:

<HTML manifest="manifest.php">

现在,当我第一次访问该页面时 - 一切都很好。 刷新后xmlhttp.send()抛出“NETWORK_ERR:XMLHttpRequest Exception 101”

为了再次正常查看页面,我需要清理浏览器缓存

删除清单文件可以解决问题,但我需要它来进行离线浏览。

谁知道出了什么问题?

由于

1 个答案:

答案 0 :(得分:1)

好吧,我通过在manifest.php中添加以下行来解决问题:

NETWORK: *

现在一切正常 我猜主页也被缓存了,这引起了一些问题。 在IE上它可以工作,因为它不支持清单文件