我知道从安全 Angular 来说这是绝对不行的。但我有一个客户,他有一个仅在内部运行的 Angular 应用程序。这意味着客户的工作人员在使用该应用程序的浏览器中无法访问互联网,并且该应用程序在虚拟机中运行。
所以他们并不真正关心浏览器安全性,因为他们只使用浏览器上的应用程序。
现在他们有以下用例:
- 用户单击 Angular 应用中的按钮
- 执行本地计算机上的 powershell 脚本
所以我的问题是,有没有办法使用 Angular/Javascript 调用本地 Powershell 脚本?
<小时/>我目前的想法
例如,我可以在 localhost:8080 上运行的虚拟机上启动本地 NodeJS 服务器(始终在启动时),该服务器监听 Rest 调用。
当用户点击按钮时,Angular 应用程序将对 localhost:8080 进行 Rest-Call,这是客户端 Node 服务器, Node 服务器执行 Powershell 脚本。
我认为这是可能的:Execute Powershell script from Node.js
<小时/>那么这有道理吗? 或者有更好的方法来完成这样的事情吗? (正如我所说,如果可以关闭浏览器安全性,那就没问题。)
最佳答案
实现此目的的其他方法是在您的应用程序中注册自定义协议(protocol)。这就是 Slack、Skype 等许多应用程序的工作原理。但是,您最初的解决方案似乎更加独立于平台。
关于javascript - 从浏览器/Javascript 调用本地 PowerShell 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56471537/