0
である私は、すべてのAjaxリクエストで動作し、特に409sを処理しようとしていますが、私のステータスコードは、FireFoxのデバッガは明らかに私に409XMLHttpRequestのステータスコードは常に0
JSコードが表示されますにもかかわらず常に 0である
(function(open) {
XMLHttpRequest.prototype.open = function(method, url, async, user, pass) {
if(this.status === 409)
console.log("Conflict 409")
open.apply(this, arguments);
};
})(XMLHttpRequest.prototype.open);
私は非常に簡単に自分のサーバーコードで409を生成することができます。 FireFoxとChromeが409を表示しています。しかしthis.status
は400であっても常に0です。私は間違って何をしていますか?
' status'のみが設定されています。したがって、 'open'はゼロ以外の状態を見ることはありません。 – Siguza
私は参照してください。私はすぐにセンドで作業することができますか、またはいくつかのイベントや読書を待つ必要がありますか?私はsendですぐに動作しようとしましたが、ステータスはまだ0です。 – BarryBones41
いいえ、それは後で起こります。 409が発生したときにコードを実行したいだけなら、 'this.addEventListener( 'readystatechange'、...)'でイベントリスナーを追加し、そこでステータス409をチェックすることができます。他のすべてのリスナーが409で動作しないようにしたい場合、それはもっと複雑になり、多くのメソッドやプロパティを必要とします。 – Siguza