首页 > 解决方案 > 如何在客户端操作 Excel 文件

问题描述

我是 php 和 javascript 的新手,所以我什至不确定我能否正确地公开我的案例。

我有一个 php 表单,客户端在他的浏览器上选择选项。

提交时,需要客户端浏览器从另一个域下载 excel 文件(我无法控制第二个服务器响应)。

它必须在客户端完成,因为只有用户才能访问第二个域(在本地网络内或通过 VPN 从 Internet 访问)。

我设法使用以下javascript强制下载:

function download(dataurl,filename) {
    var a = document.createElement("a");
    a.href = dataurl;
    a.download = filename;
    a.click();
    window.URL.revokeObjectURL(dataurl);
    a.remove();
}
download(url,filename);

文件名什么都不做,因为文件是用服务器发送的名称保存的。

下载文件后,我仍然需要重命名并将其移动到特定的网络目录(只能由客户端访问)。

我不能使用 js fetch,因为浏览器使用 CORS 阻止了下载。

由于安全原因,我什至不确定这是否可能。

任何帮助将非常感激。

标签: javascriptphpexcel

解决方案


“我仍然需要重命名并将其移动到特定的网络目录”

...您不能从 JavaScript 中做到这一点,出于安全原因,在浏览器中运行的 JavaScript 无法访问其运行的设备的文件系统。

你所能做的就是给出他们需要做什么的指示。如果这不令人满意,那么您需要将此项目实现为桌面应用程序,而不是 Web 应用程序。


推荐阅读