尝试使用Amazon lambda函数在新的浏览器窗口中打开URL时,我遇到了错误。我正在使用OpenURL,我需要从Lambda函数打开一个Ui5应用程序URL。我在这里使用Node.js.我在本地安装了OpenURL,并将其上传到lambda函数中。 当我尝试执行以下语句时
var url = require(“openurl”)。open(“www.google.com”);
我收到以下错误(请参阅图片)
虽然当我在本地Node.js上执行它时这个语句工作正常。 感谢解决问题的任何线索。
答案 0 :(得分:0)
我认为它适用于您本地,因为您的节点服务器正在与您的操作系统共享资源。当它到达本地机器之外的任何其他服务器时,我怀疑它是否会起作用。
原因是,该服务器将尝试在您的客户端(机器)上调用应用程序,这是一种违规行为;除非主机分发了一个已经设置了直通机制的映像,该映像充当服务器和客户端之间的中介。
在你的情况下,我不知道真正知道这样做的最佳方法,但我可以建议:
这种方法的问题在于它不可分发,因为这实际上要求用户设置服务器的实例,这可能是您不想要的。
另一种方法是使用可分发的映像/包,它在Lambda和本地计算机之间提供一种中介。基本上这个图像将包含用于启动服务器以始终监听Lambda调用的脚本以及打开Web浏览器(openurl)的逻辑。
让我知道这一切是否有意义?