我们有一个电子加密应用程序,可以签署交易(等等)。
我们希望其他网站能够有一个按钮,打开该电子应用程序,并预填一些参数(交易信息)。
流程如下:
1. 用户在some-crypto-site.com上点击“进行交易”。 2. 电子应用程序打开并预填参数。 3. 用户在电子应用程序中点击“签署交易”。 4. 电子应用程序在幕后处理。 5. 电子应用程序关闭并向some-crypto-site.com发送消息。
这可以在运行时或安装时完成。
我尝试过的方法(Linux,Chrome):
使用此代码this gist调用app.setAsDefaultProtocolClient。
我们希望其他网站能够有一个按钮,打开该电子应用程序,并预填一些参数(交易信息)。
流程如下:
1. 用户在some-crypto-site.com上点击“进行交易”。 2. 电子应用程序打开并预填参数。 3. 用户在电子应用程序中点击“签署交易”。 4. 电子应用程序在幕后处理。 5. 电子应用程序关闭并向some-crypto-site.com发送消息。
这可以在运行时或安装时完成。
我尝试过的方法(Linux,Chrome):
使用此代码this gist调用app.setAsDefaultProtocolClient。
app.setAsDefaultProtocolClient("my-app")
但是当我在chrome浏览器中输入my-app://foo?bar=baz
后,弹出了以下窗口,点击open-xdg没有任何反应(除了关闭弹窗)
我调查了一下
- Electron 协议API似乎只处理应用程序内的协议。
- WebTorrent .desktop文件可能是正确的方法,只是我不确定如何操作。
也许有一种方法可以通过Electron Builder在安装时完成?
非常感谢您的帮助,我不知道该怎么做!
app.setAsDefaultProtocolClient("my-app")
,然后使用my-app://foo?bar=baz
打开它会导致调用 "your/path/electron.exe my-app://foo?bar=baz"。但是 electron.exe 将其第一个参数作为应用程序路径,因此无法正常工作。 - hiitiger