我开发了一个托管在 Linux 服务器(或某些客户端的 Windows)上的 Web 应用程序。 我在前端使用 Angular 6,在后端使用 Spring Boot。
因此每个用户都使用 Firefox 连接到应用程序。到目前为止一切顺利。
但是,我必须开发一项新功能,允许用户从我的网络应用程序打开安装在他自己的计算机 (Windows) 上的软件...
所以我必须在我的应用程序(Angular 或纯 Javascript)的客户端执行此操作以启动该软件。
我知道出于安全原因这是被禁止的,除非我们在 FireFox 的安全性中添加一个异常(exception)。
我尝试了以下代码,隔离在一个 javascript 文件中:
function launchDict(nom) {
require(['child_process'], function (child_process) {
//fs and child_process are now loaded
var exec = child_process.exec;
exec('C:\\PuTTY\\putty.exe', function (error, stdOut, stdErr) {
alert("Appel logiciel");
});
})
}
怎么做?
****** 更新 ****** 由于安全合规性,javascript 方式似乎是一种“糟糕的方式”。 所描述的解决方案似乎只适用于 IE 例子 : Is it possible to run an .exe or .bat file on 'onclick' in HTML
最佳答案
由于存在安全风险,我认为这是不可能的,但作为一种解决方法,您可以创建一个可下载的快捷方式文件,其中已经包含参数。用户单击下载的 .lnk 是一个额外的步骤,但由于看起来您已经知道本地计算机上可执行文件的路径,因此它至少应该可以工作。
关于javascript - 从 webapp 启动本地 exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54693441/