4

IEによってロードされる任意のページにJavaScriptを挿入するBHO(COM相互運用機能を備えた単純なC#)の実用的なプロトタイプがあります。単純なスクリプトはconsole.log(..)などのように機能します。

私の目標は、挿入されたJavaScriptからローカルホストにAJAXリクエストを行うことです。Xドメインリクエストであることは理解していますが、実装方法がわかりません。

XMLHttpRequestとXDomainRequestについて注意深く読みました(どちらもアクセスが拒否されました)ところで、JSONを送受信したいのですが、XDomainRequestはプレーン/テキストのみを許可します(なぜ、プレーン/テキストを有効にするがjsonを許可しないセキュリティの問題はありません...)また、XDomainRequestがlocalhostを許可しないことを読みました。

応答ヘッダーが「Access-Control-Allow-Origin:*」でXドメインを許可する必要があることを理解しています(これは、挿入しているページの応答ですか?)

たぶん、応答ヘッダーを変更/パッチして、BHOからのXドメインを許可できますか?これは可能ですか?

最後の手段として、C#BHOでリクエストを行うことを検討しました。ただし、これはjavascriptからC#に呼び出すことを意味します(おそらく機能しています)が、この呼び出しが同期呼び出しであるという主な問題があります。完了ハンドラーのC#で非同期的にリクエストを発行した場合でも、javascript完了ハンドラーをコールバックする必要があります。これは、javascriptからC#に呼び出してから、C#からjavascriptにコールバックし、堅牢性とパフォーマンスの低下について話していない、ひどいオーバーエンジニアリングのように聞こえます。

何か案は?

事前にThx

4

0 に答える 0