XMLHttpRequest と通常の HTTP リクエストのパケットレベルの違いは何ですか?
-
06-07-2019 - |
質問
不思議なんだけど:もし私がルーター、パケット・インスペクター、ファイアウォール、またはその他のパケット・スニッフィング・デバイス (そうでなくてよかったと思います) だったら、従来の HTTP リクエストと XMLHttpRequest の違いを見分けることができるでしょうか?あまり理論的ではありませんが、一部の ISP または (たとえば) 携帯電話データ プロバイダーが、HTTP サービスを中断せずに XMLHttpRequest トラフィックを制限できる可能性はあるでしょうか。
ありがとう。
解決
XMLHttpRequestはHTTPリクエストであるため、パケットレベルでそれらを区別するものはありません。 XMLビットは、応答がxml Content-Typeである場合、responseXMLメソッドがDOMオブジェクトを返すという事実を指します。
他のヒント
私の知る限りでは、ルーターなどの観点から見て、基本的な違いはありません。一般的には言えません。
しかし、私は、最も一般的な Javascript ツールキットは、HTTP ヘッダーをそのツールキットに追加すると信じています。 XMLHttpRequest
それらをそのように識別します。名前は忘れてしまいましたが…
編集:こちらです 例 (Google でヒットした「jquery xmlhttprequest header」のトップ、引用符なし) これは、jQuery が明らかに設定していることを示しています。 X-Requested-With
に "XMLHttpRequest
".
パケット、ネットワーク、セッションレベル:いいえ。
アプリケーションレベル、つまりフィルタリングプロキシなどのHTTP固有のデバイスを使用する場合。
HTTPリクエストヘッダーを確認します。それらには、いくつかの違いがあるかもしれません(可能性があります)。ただし、ブラウザ固有の違いはあると確信しており、適切なJavaScriptコードが適切なヘッダーを挿入して完全に見分けがつかなくなる可能性があります。
要するに:HTTPヘッダーを確認してください。しかし、それが一般的で、あまり有用ではないと期待しないでください。