苏南大叔接着描述electron中伪协议的参数处理,即调起electron程序之后,程序体如何根据参数的不同,做出进一步的操作,也就是说识别伪协议中的url部分。需要注意的是:这里的argssetAsDefaultProtocolClient()中的最后一个参数args是没有什么关系的,请不要把两者弄混淆。

苏南大叔:electron伪协议,如何接收识别协议URL? - electron-args
electron伪协议,如何接收识别协议URL?(图5-1)

本文测试环境:win10electron@5.0.1。本文的前置阅读文章是:

协议URL参数来源

对于协议URL参数的数据来源处理,苏南大叔能够描述的就是:还是取下面这个变量:

process.argv

苏南大叔个人建议:process.argv的处理,请放置在createWindow()函数里面,便于根据不同的参数加载不同的url

简要的来说,就是要根据是否是生产模式,来判断传递进来的数据数组,然后再进行组合获得参数,最后再对参数进行分析。

let urlStr = process.argv.splice(app.isPackaged ? 1 : 2).join("")

建议在createWindow()函数中,处理process.argv,进而获得url信息。通过url信息,分离加载不同的html页面。

关联文章

本文范例中,使用了下面的electron文章中的相关代码技巧:

总结

本文从识别伪协议URL的角度来描述本文的内容,如果您是在高版本electron及生产模式下,使用本文的代码的话,那么,本文的代码就足够了。为什么这么说,那是因为有很多的特殊情况嘛。想知道很多特殊情况,怎么处理的话,请查看苏南大叔的后续文章。

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接作者。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

 【加群】加入QQ群【175454274】和大家一起讨论这个问题

 【源码】本文代码片段及相关软件,请点此获取

 【绝密】秘籍文章入口,仅传授于有缘之人   electron

本站的忠实读者小伙伴,正在阅读下面这些文章: