XMLHttpRequestのハンドラーを理解するのに少し問題があります。仕様では、onerrorハンドラーについて次のように述べています。
error[ディスパッチ...]リクエストが失敗したとき。
load[ディスパッチ...]リクエストが正常に完了したとき。
問題は、「リクエストが失敗した」とはどういう意味かということです。それは可能性があります
- リクエストをまったく発行できなかった(接続が拒否されたなどのエラーなど)、または
- 上記に加えて、サーバーがエラーコード(例:404)を返しました
また、それが同時に発砲することを意味onerrorし、決して発砲してはならないかどうかを知りたいです。onload
この参照は、コードおよびに応じonerrorてハンドラーを実行する必要があることを示しています。これは、それらが相互に排他的ではないことを示していますが、これは信頼できる情報ではないと思います。statusonloadreadyState
onload最新のOperaスナップショットを使用しているので、404ステータスコードでも起動されることがわかりました。テストは確かに間違いないことは知っていますstatusが、それが仕様ごとにやらなければならないことなのか、それともOperaのバグの回避策なのかを知りたいのです。