XDomainRequest と XMLHttpRequest level 2 の 違い

0 件のコメント

Internet Explorer 系列 で クロスドメイン通信 を行う場合、 IE8, IE9 だと XDomainRequest 、IE10 では XMLHttpRequest を利用します。 ここでは、似て非なる両者を比べてその違いをまとめます。 (IE7 以前は調べていません。。)

ちなみに、Chrome や Firefox はかなり以前から XmlHttpRequest level 2 (クロスドメイン通信) 対応しているようです(詳細はこちら)。

XDomainRequest の 機能制約

XDomainRequest は XMLHttpRequest level 2 に比べて、以下の制約があるようです。

  • スキーマ は http か https のみ 利用可能
  • メソッド は GET か POST のみ 利用可能
  • カスタムヘッダー は 利用不可能
  • Content-Type は text/plain のみ 利用可能
  • クッキー は 利用不可能

イベント、関数、プロパティの違い

  XDomainRequest XMLHttpRequest level 2
イベント onerror  
onload  
onprogress  
  onreadystatechange
ontimeout ontimeout
関数 abort abort
  addEventListener
  dispatchEvent
  getAllResponseHeaders
open open
  removeEventListener
send send
  setRequestHeader
プロパティ constructor constructor
contentType  
  readyState
  response
respnseText responseText
  responseType
  responseXML
  status
  statusText
timeout timeout
  withCredentials

今回、参考にしたサイトは以下の通りです。