2

Webブラウザに直接ダウンロードさせるのではなく、Webブラウザからサードパーティのアプリケーションにダウンロードリンクを渡すにはどうすればよいのでしょうか。もちろん、ブラウザ拡張機能が必要です。しかし、私はそれがどのように機能するかを求めています。たとえば、コマンドラインを使用して可能ですか?ソケット?それともそれを行うためのより良い方法はありますか?アプリケーション側と拡張側の両方の要件は何ですか?また、私はMac用に開発しているので、JavaScriptActiveXはここでは機能しません。

よろしく

4

1 に答える 1

3

Safari拡張機能でダウンロードをインターセプトするには、メインのHTMLファイルで、イベントを受信するように登録し、別の方法で処理する場合は、イベントbeforeloadのメソッドを呼び出しpreventDefault()てダウンロードを禁止します。次に、リンクをアプリケーションに転送するための何らかのプロセス間通信が必要です。1つの方法は、アプリケーションをトリガーするカスタムURLスキームを作成することです。たとえば、のmyapp:thelink代わりに呼び出しhttp://thelinkを行い、アプリケーションをOSに登録して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

于 2012-09-12T13:26:57.750 に答える