6

私は数日間カスタムプロトコルについて学んでいましたが、理解できないことが1つあります。カスタムプロトコルでアプリを起動する方法は知っていますが、私の質問は、
アプリの応答を取得し、JavaScriptを使用してWebブラウザーで印刷することは可能ですか?
たとえば、プロトコルmyapp://にリクエストを送信すると、C#で記述されたアプリが開き、そのアプリは文字列「これは応答です」を返し、Webブラウザで印刷できますか?
もしそうなら、あなたは私がそれを達成するのを手伝ってくれますか?
前もって感謝します。

4

1 に答える 1

4

インターネットプロトコルはブラウザだけではありません。

mailto:電子メールプログラムでアクションを引き起こします(たとえば、新しい電子メールを開始します)

ftp: FTPプログラム(WebブラウザーまたはWindowsエクスプローラーに統合されている可能性があります)でアクションを引き起こします

gopher :( まあ、それはもう実際には普及していません)

myapp://により、(C#)アプリの実行が開始されます。その時点で、C#アプリが実行できることは何でも実行できます。ディスク上に.htmlファイルを作成し、使用することを選択できます。

Process.Start("file://Path/To/My.html")

デフォルトのWebブラウザで作成したばかりのドキュメントを開きます。

アップデート

myapp://プロトコルハンドラーに、問題のページをホストするWebサーバーに更新を送信させることができます。ここでの私の仮定は、myapp://ハンドラーがクライアントマシンで実行されており、myapp://参照を含むページを提供する別のURLhttp ://mydomain.comにWebサーバーがあることです。

  1. Webサーバーは、myapp:// URLとAjaxコードの両方を含むページをレンダリングして、HTML本文の一部の更新についてWebサーバーに定期的にクエリを実行します。
  2. ユーザーがmyapp://URLをクリックします
  3. プロトコルハンドラーが実行されます
  4. プロトコルハンドラーは、更新をWebサーバーに送信します。http://mydomain.com?user=joe&result=123
  5. Webサーバーは?user=joe&result=123、次にAjaxコールバックが開始されたときに応答を更新するために使用します
  6. Ajaxコールバックは、Webサーバーからページの更新データを取得し、ページを更新します。
于 2012-11-13T21:14:09.663 に答える