我想window.open在本地用javascript中的www.example.com()函数触发下载。路径应该以“/"开头。我提供了以/开头的URL,但是,似乎window.open()函数忽略了第一个/。有没有办法让它读取/,以便我可以触发下载?
bfnvny8b1#
以/开头的URL是具有绝对路径的相对URL。它忽略URL上的现有路径,并从端口(或主机名,如果没有端口,在本例中为localhost)末尾开始计算新路径。如果您希望向不同的URL方案发出请求(在本例中为file:而不是http:),则需要使用 * 绝对 * URL(即state the new URL scheme explicitly)。注意:出于安全原因,许多浏览器会阻止由未使用file:方案提供服务的页面触发的对file:方案URL的请求。
/
localhost
file:
http:
but5z9lq2#
请尝试使用此:
window.open('file:///D:/Examples/file2.extension')
它对我的本地文件起作用
qlfbtfca3#
出于安全原因,浏览器阻止使用window.open()打开本地文件。为了显示本地文件,你必须敦促用户手动选择你想让他们打开的文件。我知道这不是理想的解决方案,但它是如何工作。与FileReader的实现之一是在这个答案:如何用JavaScript打开本地磁盘文件?
window.open()
3条答案
按热度按时间bfnvny8b1#
以
/
开头的URL是具有绝对路径的相对URL。它忽略URL上的现有路径,并从端口(或主机名,如果没有端口,在本例中为localhost
)末尾开始计算新路径。如果您希望向不同的URL方案发出请求(在本例中为
file:
而不是http:
),则需要使用 * 绝对 * URL(即state the new URL scheme explicitly)。注意:出于安全原因,许多浏览器会阻止由未使用
file:
方案提供服务的页面触发的对file:
方案URL的请求。but5z9lq2#
请尝试使用此:
它对我的本地文件起作用
qlfbtfca3#
出于安全原因,浏览器阻止使用
window.open()
打开本地文件。为了显示本地文件,你必须敦促用户手动选择你想让他们打开的文件。我知道这不是理想的解决方案,但它是如何工作。与FileReader的实现之一是在这个答案:如何用JavaScript打开本地磁盘文件?