使用Ajax监视文本文件中的更改(javascript)

时间:2019-03-01 20:12:18

标签: javascript php html ajax server

我已经完成研究,找不到适合该主题的答案。我现在有一个带有文本输入字段的网页,每次更改输入时,它将运行一个将数据写入文本文件的功能。问题是,当我尝试读取文件并将元素内容更改为文本文件的内容时,它总是返回相同的值。我的函数返回的值是我的文本文件很久以前的值。这是我的代码:

notebook = "/Users/xxx/TestFolder/Notebook1"

我的代码是否有什么问题阻止我读取文件的当前内容?

1 个答案:

答案 0 :(得分:0)

文件可能会被浏览器的HTTP缓存所缓存。尝试将随机生成的数字作为查询参数附加到您的请求(您的filePath变量)中。

例如,

function OpenFile(filePath) {
    var text = "NULL";
    var ajax = new XMLHttpRequest();
    ajax.onreadystatechange = function() {
        if (ajax.readyState == 4) {
            text = ajax.responseText;
        }
    };

    // HERE, append the query parameter with random number
    ajax.open("POST", filePath + '?' + Math.random(), false);

    ajax.send();
    return text;
}

如果这是问题所在,那么see here会提供有关如何管理清除缓存的更多问题。