繁体   English   中英

javascript从URL创建文件

[英]javascript creating a file from URL

我正在使用想要通过 HTML 文件系统加载文件的 3rd 方库,如下所示:

<input id="fileupload" type="file" onchange="LoadAndDisplayFile(this.files[0])">

这很好用,除了我想将 url 传递给存储在服务器上的文件,而不是让用户上传文件。

我尝试使用:

var myFile = new File ("path/to/file");

希望我能够将myFile传递到LoadAndDisplayFile()但我收到以下错误:

未捕获的类型错误:无法构造“文件”:需要 2 个参数,但只有 1 个参数。

我确定这是一个菜鸟问题,但我在这里错过了什么?

您不能创建只提供 URL 的 File 对象。

正确的方法是通过Http请求获取文件并读取它,如下所示:

var blob = null
var xhr = new XMLHttpRequest()
xhr.open("GET", "path/to/file")
xhr.responseType = "blob"
xhr.onload = function() 
{
    blob = xhr.response
    LoadAndDisplayFile(blob)
}
xhr.send()

我正在处理同样的错误,花了一些时间后,我使用下面的代码创建了新的 File 对象

                              new File(
                                [""],this.name,{
                                lastModified: 1605685839310,
                                lastModifiedDate: new Date(),
                                size: this.size,
                                type: "",
                                webkitRelativePath: ""
                            });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM