我想在我的计算机上打开网页时自动阅读本地文本文件。我怎样才能做到这一点?我使用了本网站上回答的一个解决方案中的以下代码,并说“访问被拒绝”。
<script type="text/javascript">
var fileDisplayArea = document.getElementById('fileText'); //to show output
function readTextFile(file)
{
var rawFile = new XMLHttpRequest();
rawFile.open("GET", file, false);
rawFile.onreadystatechange = function ()
{
if(rawFile.readyState === 4)
{
if(rawFile.status === 200 || rawFile.status == 0)
{
var allText = rawFile.responseText;
fileDisplayArea.innerText = allText
}
}
}
rawFile.send(null);
}
readTextFile("file:///Location/fileToBeRead.txt");
</script>
这个问题还有其他解决办法吗?
答案 0 :(得分:4)
您无法从本地计算机上读取文件。
您只能从运行您网站的同一域中读取文件(或者使用jsonp来获取XSS规则)
答案 1 :(得分:0)
您不应该在客户端计算机上读取文件。它是一个安全问题,因此不允许(访问被拒绝)。 如果要在客户端计算机上存储数据,请使用cookie,或者正确指出,使用html会话或本地存储。
答案 2 :(得分:0)
为了安全起见,原则上没有方法可以读取系统文件(来自URL ... file:///...
)。
答案 3 :(得分:0)
您可以使用HTML5的Local Storage功能执行此操作。