it-swarm-id.com

Apakah Internet Explorer 'batas waktu'?

Di dalam situs web saya, saya memiliki satu halaman yang secara dinamis memperbarui melalui AJAX/JSON di halaman HTML biasa.

Sekarang halaman ini dapat dibiarkan terbuka hingga tiga atau empat hari. Ketika saya membiarkannya berjalan selama akhir pekan, data telah membeku, server masih berjalan dengan sempurna dan setelah refresh semuanya mulai berjalan kembali. Jadi pertanyaan saya adalah Apakah Internet Explorer (atau bahkan browser lain) 'batas waktu'?

3
sphvn

Banyak pertanyaan datang ke saya:

  1. Apa versi IE?
  2. Apa kode yang membuat panggilan?
  3. Apa yang dilakukan browser ketika Anda kembali ke sana beberapa hari kemudian?
  4. Apa yang ditunjukkan oleh log server web Anda - apakah ada pengembalian dari server web dengan kode kesalahan yang tidak dapat ditangani oleh JavaScript?

Secara umum, jika Anda memiliki sepotong kode JavaScript yang sedang dieksekusi pada timer dengan setTimeout akan berjalan selamanya. Tetapi ingat bahwa browser adalah perangkat lunak desktop dan karena itu, kadang-kadang hal-hal terjadi pada sistem yang dapat mempengaruhi browser itu. Sulit untuk berspekulasi tanpa mengetahui lebih tepat apa kondisi pengalaman Anda. Mungkin saja browser membeku karena beberapa perangkat lunak sistem lain berjalan. Ada kemungkinan bahwa sistem DNS pergi kerflooie untuk sementara waktu, dan kemudian JavaScript tidak menangani masalah itu dengan baik. Ada kemungkinan server yang menyajikan kontennya diam sejenak dan mengembalikan string yang salah yang tidak bisa ditangani oleh JavaScript Anda, kemudian, eksekusi halaman terhenti. Terakhir, mungkin browser kehabisan memori sementara? Jika data yang dikembalikan juga menambahkan konten yang menambahkan acara ke halaman, mungkin Anda kehabisan memori? Ini akan menjadi kasus jika halaman benar-benar "membeku" - tetapi Anda kemungkinan akan melihat peringatan memori dari IE dalam kasus itu.

Banyak seluk beluk untuk pertanyaan ini, dan tidak cukup detail yang disediakan.

2
artlung

Saya tidak akan berharap IE untuk kehabisan waktu tetapi jika permintaan ajax telah gagal dan mungkin tidak mencoba untuk mencoba lagi. Cara yang baik untuk mengonfirmasi ini adalah dengan menggunakan Firefox dan mengunduh plug-in yang disebut FireBug. Ini akan memberi Anda log dari semua permintaan http/ajax yang diminta dari desktop dan akan menunjukkan kepada Anda jika ia menerima status kesalahan apa pun yang kembali dari server atau kesalahan javascript.

2
AronHopkins