问题标签 [custom-url-protocol]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
298 浏览

javascript - 如何使用 JavaScript 检查系统中是否安装了自定义应用程序?

我在我的系统中安装了一个自定义应用程序,我想检查..应用程序是否已安装或注册在注册表中?

我想根据该状态执行一些操作,但我无法从浏览器检测或读取注册表。我经历了很多问题/解决方案,但它们对我不起作用。

如果你能帮助我实现我的愿望……那对我真的很有帮助。

当我触发我的自定义 URI 时,在控制台中基于 If Application installed then Launched external handler for 'myApp://dgsda'. If Not Installed 然后在控制台中打印日志Not allowed to launch 'myApp://dgsda' because a user gesture is required.

但我无法捕捉到这些日志。

我正在分享一些我尝试过的方法。

Custom URI : myapp://anything

使用上述方法超时始终在执行

如果您需要任何进一步的信息,请告诉我。

0 投票
0 回答
168 浏览

outlook - iOS 通用链接和 Outlook SafeLinks 保护

我已经实现了通用链接,工作正常。我向用户发送电子邮件,然后 iOS 将打开应用程序(如果已安装),否则将转到我的网站。此时,我使用 apache mod_rewrite 重定向到提供有关安装应用程序的信息的页面。

但是,某些用户的 hotmail 帐户启用了高级威胁防护。所以他们在收件箱中收到的 URL 是用https://nam10.safelinks.protection.outlook.com/包装的?...当您关注它时,最终会重定向到正确的网址。在 iOS 14 上可以正常打开应用程序,但是在 iOS 13 上,无论是否安装了应用程序,它都会将我带到网站。

所以在 iOS 13 上,安全链接保护完全打破了通用链接配置。

我正在尝试解决这个问题。我目前的想法是使用 mod_rewrite 转发到自定义 URL,但为此苦苦挣扎,因为 mod_rewrite 喜欢在我的重定向前添加 http://。

有没有其他人经历过这个?我看过一篇关于该主题的堆栈溢出帖子,但没有适合我的解决方案。

0 投票
1 回答
116 浏览

google-chrome - 使用自定义/外部协议可能导致此 Chrome 安全警告的原因是什么?

我正在尝试诊断同事的问题,即当他们尝试使用特定自定义协议打开 URL 时,他们在 Chrome 中收到安全警告。他们看到了这个警告:

在此处输入图像描述

我最初认为这可能是因为双斜杠被解释为 HTTPs / 告诉浏览器使用相同的协议,但显然当它被删除时,它会在他们提交请求时重新添加。

什么可能导致此警告?这可能是我们如何注册自定义协议的问题吗?

0 投票
1 回答
96 浏览

windows - 无法通过自定义 url 协议打开本地 pdf 文件

我创建了一个协议处理程序来打开 acrobat reader dc 。因此,只要单击我的 webapp 中的链接,我就会尝试使用本地 pdf 文件启动 acrobat。

mypdf:c:\test\form.pdf 这是我点击的网址

这是给定协议处理程序中的命令:“acrobat.exe”/A“zoom=1000”“%1”

但是说“打开文档时出现错误,文件名或卷标语法不正确。

在注册表中将 %1 替换为 c:\test\form.pdf 时,acrobat 阅读器会毫无问题地打开文件。

0 投票
0 回答
55 浏览

reactjs - React + 电子深度链接,如何从 React 应用程序中打开确切的路线

我有一个电子 + 反应应用程序(带有 react-router-dom )。我已经启用了自定义协议的深度链接my-app:。按照这个 ans 深度链接电子应用程序。使用 Electron (macOS) 打开应用程序并通过深度链接传递参数

深度链接工作正常,电子应用程序以其现有状态打开。现在,我的 react 应用程序有多个路由,/join/create等。如何使用深度链接打开 react 应用程序的确切路由,my-app://join应该在应用程序中打开加入屏幕,同样my-app://create应该在/create路由中启动应用程序。我可以访问电子文件中的深度链接 url,不知道如何从反应应用程序中的深度链接中打开确切的路由。

0 投票
0 回答
103 浏览

url - 在 MS Teams 聊天中嵌入自定义 URL 协议

我们使用 Microsoft Teams 桌面进行日常交流。我们还有其他工具可以创建自定义 URL 协议链接,这极大地有助于通过电子邮件等进行通信。问题是 Teams 似乎无法识别这些 URL。它会在它们下划线(可能来自底层复制的格式),但是当您单击时没有任何反应。非自定义 URL,例如 onenote:// 工作。有没有人获得自定义 URL 以在 Teams 中工作?

0 投票
1 回答
658 浏览

url - 如何使“URL 协议”从其自己的目录启动应用程序,而不是从 c:\windows\system32 启动?

我已经使用下面的脚本在我的系统中注册了一个 URL 协议来启动一个批处理文件“showPath.bat”。

“showPath.bat”的内容只是显示当前工作目录。IE。,

如果我通过双击直接运行批处理文件,我可以正确看到它的路径。但是,如果我使用上面注册的 URL 协议启动批处理文件。即,从 Chrome 浏览“ProtoTest://”,批处理文件运行,但显示路径“C:\Windows\system32”而不是批处理文件的目录。因此,我相信使用 URL 协议启动的应用程序以 system32 作为工作目录运行。现在,如何在使用 URL 协议从浏览器启动时从其自己的目录运行批处理文件 - 无需修改批处理文件本身。我只能更改 URL 协议。

0 投票
0 回答
32 浏览

javascript - 是否可以使用自定义 url 协议打开 Photoshop 和扩展程序?

我想在网页上创建一个按钮,该按钮将打开带有扩展名的 Photoshop。

我设法通过此站点的按钮打开 Photoshop: https ://medium.com/swlh/custom-protocol-handling-how-to-8ac41ff651eb

但是我还没有找到如何同时打开一个 Photoshop 扩展。

这是我的 CustomProtocol.html 文件:

这里是扩展名:C:\Program Files\Common Files\Adobe\CEP\extensions

这是我正在谈论的那种扩展:

在此处输入图像描述

0 投票
0 回答
33 浏览

javascript - 是否可以在 Photoshop 上获取自定义 url 协议的参数?

我正在使用 JavaScript 开发一个 Photoshop 插件,我希望能够在用户单击网页上的按钮时获取我发送的参数,这要归功于自定义 url 协议。

html 文件如下所示:

这是我的自定义 url 协议:

我想在 regedit 中搜索自定义 url 的数据(通过路径),但我不知道该怎么做。

0 投票
0 回答
28 浏览

electron - 电子模块协议在幕后是如何工作的?

我拼命想了解电子协议模块。目前主要是关于注册方法(例如 registerFileProtocol)。我已经尝试使用电子存储库回答我的问题,但不幸的是没有成功。背景是我想在渲染过程中从磁盘上的某个位置加载图像。根据文档和浏览器的安全设置,这不适用于 file:// 协议。经过一番研究,我通过使用 registerFileProtocol 方法注册自定义协议找到了解决方案。同时,这个解决方案也有效,但我不明白。因此,如果有人可以回答我以下问题或提示我在哪里可以找到答案,我将非常高兴:

  • 协议模块的确切上下文是什么?浏览器(渲染器)、节点(主)还是操作系统?

  • 我在哪里可以找到协议方法的 JavaScript 定义/实现(例如 registerFileProtocol)?

  • 处理程序到底在哪里注册?节点、Chrome 或操作系统。

  • 回调传递给处理程序的具体内容是什么?我在哪里可以找到实现?

  • 幕后的具体流程是什么?例如,如果我在 src 属性的 img 标记中使用我的自定义协议。何时何地或谁调用处理程序?处理程序的回调如何发挥作用?

  • 为什么处理程序需要在主进程中注册,即使我在渲染器进程中使用自定义协议?

致以真诚的感谢和诚挚的问候