使用路径

时间:2017-08-10 10:43:40

标签: javascript html typescript

是否可以使用绝对路径从本地光盘中读取javascripttypescript中的图像文件。

我读到,出于安全原因,浏览器不允许访问绝对路径&文件系统。

这是真的吗?或者有没有办法访问本地文件?

5 个答案:

答案 0 :(得分:0)

嘿,您可以在浏览器上保存页面选项,并可以使用绝对路径附加图像

通过点击浏览器上的右键单击选项保存本地网页,可以使用绝对或相对路径设置任何本地图像

答案 1 :(得分:0)

如果您只想读取文件的内容,您可以向用户询问输入。类似的东西:

document.getElementById("fileUpload").addEventListener("change", function() {
  alert(this.files[0].name)
});
<input type="file" id="fileUpload"/>

答案 2 :(得分:0)

您无法从路径中读取浏览器中的文件。要读取文件的内容,您需要一个File对象,该对象由<input type="file">输入生成,或通过拖放生成。

换句话说,您需要用户为您提供要读取的文件 - 您不能简单地从硬盘中读取任意文件(出于好的理由 - 我们不希望网站只是能够读取我们所有的文件)

答案 3 :(得分:0)

以下是使用javascript:

读取语言环境文件test.csv的示例代码

<html>
    <head>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>   
    </head>
    <body>
        <script type="text/javascript">
            // Check for the various File API support.
            if (window.File && window.FileReader && window.FileList && window.Blob) {
                console.log("File APIs are supported !");
            } else {
                console.log('The File APIs are not fully supported in this browser.');
            }
            //Create a test.csv in the same path as this .html
            $.get('test.csv', function(data){
                console.log(data);
            });

        </script>
    </body>

</html>

注意:将test.csv放在.html的同一目录中,然后测试Firefox。在谷歌浏览器中,如果您没有在服务器中托管.html和test.csv,则会出现crossOrigin错误。

答案 4 :(得分:-1)

你试过这个吗?

https://developer.mozilla.org/en/docs/Web/API/FileReader

从链接:

  

FileReader对象允许Web应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用File或Blob对象指定要读取的文件或数据。