我正在开发一个HTML5应用程序。我利用.manifest解决方案缓存所有文件,因此当您无法访问Internet时可以使用该应用程序。Ajax请求和离线缓存
我想同步一些数据到服务器,只要有可能。由于变量navigator.online似乎不够可靠,我做了一个AJAX请求(使用jQuery.get()
)来检测我是否得到了某些回应,这意味着用户在线。
问题是,只要整个应用程序被缓存,每个向Internet上的文件发出的AJAX请求都会无故失败。我尝试了Chrome,Firefox和Safari(在iPad上),结果相同。
我使用jQuery.get()
来获取作为应用程序一部分(并同时缓存)的一些文件的内容,这些请求完美地工作。
我第一次遇到同源问题。所以我试图去https://graph.facebook.com做一个请求,只是为了看看我能得到什么回报。在Chrome控制台中,请求状态为“待处理”,并收到0字节。
当我停用清单并清空缓存时,根本没有问题。
你有什么想法或暗示,为什么这是发生?
谢谢:)
PS:英语不是我的母语,所以请原谅(并随时纠正)我可能犯任何错误。 :)
'.get()'是一个舒适的速记。但为了更好地控制请求,请尝试['.ajax()'](http://api.jquery.com/jQuery.ajax/),或者使用'.get()'与['.ajaxSetup()'] (http://api.jquery.com/jQuery.ajaxSetup/) – Boaz