0

私は次のように http post 関数を呼び出しています:

$http.post(myUrl, myData, { timeout: 2000 }).success() etc

応答が速い場合、呼び出しは完全に機能しますが、応答に 2 秒以上かかると、angularjs コードがクラッシュします!

IE10、Chrome、および Firefox で実行される 1 つの HTML ページを作成し、IE9 でエラーが明確に表示されるようにしました: http://www.apxproto.com/api/ngPost.htm (下のプランカーの代わりにこれを表示)

angularコードを確認しましたが、タイムアウトになるとxhr.abort()が呼び出されます。xhr.onreadystatechange は、xhr.getAllResponseHeaders() を呼び出してヘッダーを取得しようとします。これは、xhr が中止されたために if が失敗する場所です。

ここにプランカーがあります:http://plnkr.co/12rp7WqmDpPJC5ASazkJ

この動作は IE9 でしか確認していないことに注意してください。(残念ながら、plunker は IE9 でも問題があります。)

助言がありますか?AngularJs Core 開発者はいますか? ありがとう

4

1 に答える 1