我尝试使用Javascript读取文本文件失败了

时间:2014-04-23 16:30:51

标签: javascript

我在页面加载时执行以下功能:

function get_words()
{
    var rawFile = new XMLHttpRequest();
    rawFile.open("GET", "file:///C:\Users\myMachineName\Documents\PersonalSite_Improved\wordsEn.txt", true);
    rawFile.onreadystatechange = function ()
    {
        if (rawFile.readyState === 4)
        {
            if (rawFile.status === 200 || rawFile.status == 0)
            {
                var allText = rawFile.responseText;
                alert(allText);
            }
        }
        rawFile.send(null);
    }
}

这是我自己使用这个S.O.的程序。线程:Javascript - read local text file

我承认我并不完全理解这个程序。但是,我可以清楚地看到,如果页面正常工作,我将收到文本文件内容的警报。我使用console.log()运行了一些测试,以确定永远不会输入第一个if语句。但由于我不知道这里发生了什么,我不知道如何解决这个问题。

任何帮助?

2 个答案:

答案 0 :(得分:1)

您尝试阅读的文档必须由HTTP服务器提供,您无法从硬盘驱动器或计算机中提取本地文件。这样做的原因只是安全性,因为如果JavaScript可以读取本地计算机上的文件,那么每个人都可以打开,查看和阅读人们计算机上的所有内容。只需运行本地HTTP服务器,如WampServer或其他类似的东西。

答案 1 :(得分:0)

出于安全原因,您无法使用xml请求来读取本地文件。

See this answer for more info.