我正在实现 HTML 页面的离线缓存,支持最少的图片和 css。
我使用 phonegap API 检索文件然后解析它。我正在检索 CSS 和图片链接,使用 BuildUrlCss 函数构建请求(处理根、相对和绝对 URL):
fileTransfer.download(
uri,
Path,
function(entry) {
alert("download complete: " + entry.fullPath);
entry.file(function(file){
var reader = new FileReader();
reader.onloadend = function(evt) {
// Retrieve CSS file linked in article
var cssRegExp = /<link.*?href=(?:"|)(.*\.css).*?>/g;
while (cssFile = cssRegExp.exec(evt.target.result)) {
alert(BuildUrlCss(cssFile[1], Url));
}
reader.readAsText(file);
});
},
function(error) {
alert("download error source " + error.source);
alert("download error target " + error.target);
}
)
只要传递的 URL 中没有 http 重定向,这就可以正常工作。
我想知道是否有任何方法可以在成功函数中检索 phonegap API 使用的“最终”Url(因为 phonegap API 支持 http 重定向并下载指向的 Url),例如,或者使用任何其他 javascript 函数或库?
非常感谢你的帮助。这个问题快把我逼疯了...
问候。
弗洛朗
#这是一个更新,我尝试了 wget 并在 Firebug 中检查了我的 url,并注意到 wget/browser 收到了 302 响应,给出了最终 URL。
这是我想在 javascript 中获得的最终 url。