将下载链接从网络浏览器传递到第三方应用程序

问题描述 投票:0回答:2

我想知道如何将下载链接从网络浏览器传递到第三方应用程序,而不是让网络浏览器直接下载。 当然需要浏览器扩展。但我想知道它的工作方式。例如可以使用命令行吗?插座?或者有没有更好的方法来做到这一点?应用端和扩展端都有哪些要求? 另外,我正在为 Mac 进行开发,因此 JavaScript ActiveX 在这里不起作用。

问候

javascript safari-extension download-manager browser-extension
2个回答
3
投票

要拦截 Safari 扩展中的下载,在主 HTML 文件中,您可以注册接收

beforeload
事件,然后如果您想以不同方式处理它,则调用该事件的
preventDefault()
方法来禁止下载。然后,您需要某种形式的进程间通信来将链接转发到您的应用程序,一种方法可能是创建触发您的应用程序的自定义 URL 方案,例如调用
myapp:thelink
而不是
http://thelink
,并将您的应用程序注册到处理
myapp:
协议的操作系统...

http://developer.apple.com/library/safari/documentation/Tools/Conceptual/SafariExtensionGuide/MessagesandProxies/MessagesandProxies.html#//apple_ref/doc/uid/TP40009977-CH14-SW9

http://cocoadev.com/wiki/HowToRegisterURLHandler


0
投票

ShjvhhhdhfhfgdgstcnvdgTfkjlftaf n jDatfkbhzfxjchzgfjfgafxvxhcjvu xdydtgjhjdrayxjvkgjfhdgs th nvj

© www.soinside.com 2019 - 2024. All rights reserved.