我如何使用JavaScript来阅读文本文件并将其显示在我的网站上?

时间:2014-03-23 04:47:17

标签: javascript

这就是我现在尝试的:

<script>
function readTextFile(file)
{
    var rawFile = new XMLHttpRequest();
    rawFile.open("GET", file, true);
    rawFile.onreadystatechange = function ()
    {
        if(rawFile.readyState === 4)
        {
            if(rawFile.status === 200 || rawFile.status == 0)
            {
                var allText = rawFile.responseText;
                alert(allText);
            }
        }
    }
    rawFile.send(null);
}
</script>
<script>
readTextFile("http://newsxpressmedia.com/files/theme/test.txt");
</script>

但它没有工作页面像meassage一样没有消息错误。只是弹出一个窗口,因为它不起作用。

我想在我的网站上做的是逐行阅读文件内容并将其显示在我的网站上。

链接上确实存在:http://newsxpressmedia.com/files/theme/test.txt

2 个答案:

答案 0 :(得分:0)

您的网站是否与newsxpressmedia.com相同?如果不是,则是跨域问题。浏览器不允许ajax调用访问不同的域。更多info

答案 1 :(得分:0)

这听起来像same origin security issue。如果没有来自目标域的某些特殊交叉原始权限,浏览器就不会允许您在与您的网页不同的域中对ajax进行操作。

有关详情,请参阅同源政策的MDN页面:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Same_origin_policy_for_JavaScript

有关跨源权限的信息,请参阅MDS的CORS页面:https://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS,但这需要目标网站的合作。


典型的解决方法是让您的服务器作为代理工作,这样您就可以从服务器请求文件,服务器从实际网站获取文件或找到在网页中使用iframe的方法