无法连续记录到我的本地文件!帮助,任何人?

时间:2011-03-26 14:12:19

标签: javascript html5 google-chrome-extension

chrome.tabs.onUpdated.addListener(checkForValidUrl);
function checkForValidUrl(tabId, changeInfo, tab) {
    if (tab.url.indexOf('https') > -1) {
        var tabURL = tab.url;
        console.log("\n<TimeStamp>" + getTimestamp() + "</TimeStamp><Browser>Chrome</Browser><URL>" + tabURL + "</URL>\n");
        window.requestFileSystem(window.PERSISTENT, 5 * 1024 * 1024, initFs);

        function initFs(fs) {
            fs.root.getFile
            ('log.txt', { create: true, exclusive: true }, function (fileEntry) {
                fileEntry.isFile = true;
                fileEntry.name = 'log.txt';
                fileEntry.fullPath = '/log.txt';
                fileEntry.createWriter(function (fileWriter) {
                    fileWriter.seek(fileWriter.length);
                    var bb = new BlobBuilder();
                    bb.append("\n<TimeStamp>" + getTimestamp() + "</TimeStamp><Browser>Chrome</Browser><URL>" + tabURL + "</URL>\n");
                    fileWriter.write(bb.getBlob('text/plain'));
                });
            });
        }
    }
}

问题:每当我使用HTTPS浏览网站时,我都希望将我访问过的每个网站都记录到我的本地文件中。我在这里有一个问题,例如,如果我首先浏览“HTTPS://google.com”和其他HTTPS网站以后,我只能在我的日志文件中记录“HTTPS://google.com”,而不能连续记录其他HTTPS网站。有人可以指导我吗?找出代码中的错误?非常感谢你提前!

1 个答案:

答案 0 :(得分:1)

我可以通过在调用getFile

中删除“exclusive:true”来避免错误