msidolphin / vue-api-creator

An api manager bases on axios
MIT License
10 stars 1 forks source link

如何用js调用本地客户端 #7

Closed weiweidong1993 closed 4 years ago

weiweidong1993 commented 4 years ago

纯技术讨论,与本项目无关大佬给点意见.

类似于百度网盘,在web点击链接直接可以启动本地的客户端,如果没有下载客户端就提醒下载

看了一些攻略是修改注册表,每个用户下载安装的地址不一样,还有参数如何传递?

大佬有时间帮忙看看,谢谢

来自忠实的粉丝 克里斯·东仔的提问

msidolphin commented 4 years ago

@weiweidong1993 我并没有接触过相关内容,看了一下各种资料,有如下的理解: 1、开发者不需要关注用户的应用安装路径,因为实现应用的启动依靠的是自定义协议,这个可以由应用程序开发者提供并且在应用程序安装的时候自动写入注册表。 2、参数传递和我们平时传递url参数差不多,具体怎么接收就是应用程序的事情了

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Test]
@="TestProtocol"
"URLProtocol"=""

[HKEY_CLASSES_ROOT\Test\DefaultIcon]
@="F:\\Test.exe,1"

[HKEY_CLASSES_ROOT\Test\shell]
[HKEY_CLASSES_ROOT\Test\shell\open]
[HKEY_CLASSES_ROOT\Test\shell\open\command]
@="\"F:\\Test.exe\" \"%1\""
<a href="Test://message/?uin=88888888&Site=JooIT.com&Menu=yes">打开客户端软件</a>
weiweidong1993 commented 4 years ago

@weiweidong1993 我并没有接触过相关内容,看了一下各种资料,有如下的理解: 1、开发者不需要关注用户的应用安装路径,因为实现应用的启动依靠的是自定义协议,这个可以由应用程序开发者提供并且在应用程序安装的时候自动写入注册表。 2、参数传递和我们平时传递url参数差不多,具体怎么接收就是应用程序的事情了

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Test]
@="TestProtocol"
"URLProtocol"=""

[HKEY_CLASSES_ROOT\Test\DefaultIcon]
@="F:\\Test.exe,1"

[HKEY_CLASSES_ROOT\Test\shell]
[HKEY_CLASSES_ROOT\Test\shell\open]
[HKEY_CLASSES_ROOT\Test\shell\open\command]
@="\"F:\\Test.exe\" \"%1\""
<a href="Test://message/?uin=88888888&Site=JooIT.com&Menu=yes">打开客户端软件</a>

谢回答 疑问:自定义协议 没法动态生成啊 需要自己写入吗?

msidolphin commented 4 years ago

@weiweidong1993 应该是在安装程序的时候写入到注册表中的