从标准Web浏览器启动Electron应用程序

时间:2016-01-04 15:55:49

标签: electron

单击> dat employee salary addMe 1 John Doe 21000 Please delete this col! test1 2 Peter Gynn 23400 Please delete this col! test2 3 Jolie Hope 26800 Please delete this col! test3 链接将打开我的默认邮件客户端。以类似的方式,我想发布一个mailto:的电子应用程序。如果未安装应用程序,实现此目的的最佳方法是什么,并优雅地回退到标准my-app:链接?

此外,我还希望能够传递一些额外的细节http。如何在Electron发布时将其拦截?

我已经阅读了一些关于我认为可能是相关内容的文档:http://electron.atom.io/docs/v0.36.0/api/protocol/但是作为前端开发者,我对于总体过程的工作方式存在一些差距。任何帮助非常感谢!

2 个答案:

答案 0 :(得分:11)

自从这个问题首次发布以来,电子已经发展了很多。

你不再需要深入潜水,可以跳过Electron协议API。相反,请使用app.setAsDefaultProtocolClient(protocol[, path, args])界面及其兄弟app.removeAsDefaultProtocolClient(protocol[, path, args])app.isDefaultProtocolClient(protocol[, path, args])

这些使您能够注册协议标识符your-protocol://并接收参数:

  

整个链接(包括协议)将传递给您的应用程序   作为参数。 Electron API docs

答案 1 :(得分:0)

我不确定是否可以做你想做的事。取决于您是要从实际的浏览器窗口启动Electron应用程序还是仅从其他Electron实例启动。

我发现了另一个Stack Overflow帖子link,它显示了一种解决方法(尽管我担心它不会擅长默认任何事情)并解释了如何直接启动程序可能会有危险浏览器。

如果您想从其他Electron应用中启动Electron应用,可能需要查看link