You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

浏览器通过URL调用Teams/Zoom等外部应用的机制与实现方法

浏览器唤起本地应用的实现机制(以Teams为例)

核心原理:自定义URL协议

浏览器弹出「在浏览器/外部应用打开」提示的核心是自定义URL协议(URI Scheme)。

Teams在安装时,会向操作系统(Windows注册表、macOS的plist配置文件)注册专属的URL协议(比如msteams://)。当浏览器识别到链接前缀是这个专属协议时,会向系统发起请求,系统告知该协议对应本地的Teams应用,浏览器随即弹出选择提示。

Teams是否依赖浏览器扩展?

不需要。该功能完全依赖系统级的协议注册,和浏览器扩展无关。Teams安装程序会自动完成系统配置,告诉系统:msteams://开头的链接由Teams应用处理。

如何从浏览器调用任意本地应用并传递URL?

实现这个功能需要完成两步:

1. 向系统注册自定义URL协议

  • Windows系统:修改注册表,在HKEY_CLASSES_ROOT下添加协议项,指定应用路径与启动参数。示例注册表配置:

    Windows Registry Editor Version 5.00
    [HKEY_CLASSES_ROOT\myapp]
    @="URL:MyApp Protocol"
    "URL Protocol"=""
    [HKEY_CLASSES_ROOT\myapp\shell]
    [HKEY_CLASSES_ROOT\myapp\shell\open]
    [HKEY_CLASSES_ROOT\myapp\shell\open\command]
    @="\"C:\\Path\\To\\MyApp.exe\" \"%1\""
    

    其中%1会被替换为点击的完整URL,应用可通过解析该参数获取传递的内容。

  • macOS系统:在应用的Info.plist中添加CFBundleURLTypes配置,声明支持的自定义协议:

    <key>CFBundleURLTypes</key>
    <array>
      <dict>
        <key>CFBundleURLSchemes</key>
        <array>
          <string>myapp</string>
        </array>
      </dict>
    </array>
    

    应用安装后,系统会自动识别并注册该协议。

2. 在网页中使用自定义协议链接

在网页内创建指向自定义协议的链接,示例HTML代码:

<a href="myapp://open?url=https://example.com">打开我的应用并传递链接</a>

用户点击后,浏览器检测到自定义协议会弹出确认提示,用户选择打开本地应用后,系统会启动对应程序,并将完整的myapp://open?url=https://example.com作为参数传递给应用,应用自行解析参数即可获取传递的URL。

注意事项

  • 自定义协议名称需避免与现有通用协议(如http、https)冲突
  • 浏览器会对自定义协议唤起做安全限制,首次唤起必然弹出确认提示,防止恶意网站未经授权启动本地应用
  • 不同浏览器的提示样式略有差异,但核心逻辑一致

内容的提问来源于stack exchange,提问作者Claudi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 15:52:09