I want to know when I'm using IE8 open a website (like www.yahoo.com), which API will be called by IE8? so I can hook these API to capture which website that IE8 opening currently.
2 に答える
IE は、Microsoft のWinSockライブラリ API を使用して Web サーバーと対話します。
HTTP 要求を調べて、ブラウザが使用している URL を特定するために使用できる、ネットワーク監視/スニッフィング API を探すことをお勧めします。
ブラウザーに URL を入力すると、ブラウザーは (通常) URL で識別されるサーバーに対して HTTP 要求を行います。要求を行うには、サーバーの IP アドレスが必要です。これは、ホスト (ドメイン) 名の DNS ルックアップによって取得されます。
応答 (通常は HTML マークアップを含む) を受信すると、ブラウザーはそれをレンダリングして Web ページを表示します。
詳細はこちら:ブラウザに URL を入力するとどうなるか
したがって、一般的なケースでは、「API」リクエスト自体は行われません。(技術的に言えば、サーバーへの元の HTTP 要求は API 要求と考えることができます)。ただし、おそらくあなたが意味する「API」リクエストの種類は、今説明したこの一般的なケースでは行われません。これらのリクエストは、ページ上で実行されている JavaScriptが Web サーバーに対してAjax HTTP リクエスト (XmlHttpRequest) を作成して何らかの操作を実行するときに発生します。
IE8 についてはわかりませんが、ほとんどの最新ブラウザー (IE9 や IE10 を含む) の「開発者ツール」機能を使用すると、Web ページがさまざまな操作を実行する際に作成した Ajax HTTP 要求を確認できます。
お役に立てれば。