it-swarm-vi.com

Internet Explorer có "hết thời gian" không?

Trong trang web của tôi, tôi có một trang duy nhất tự động cập nhật thông qua AJAX/JSON trong một trang HTML đơn giản.

Bây giờ trang này có thể bị mở tối đa ba hoặc bốn ngày. Khi tôi để nó chạy vào cuối tuần, dữ liệu đã bị đóng băng, máy chủ vẫn chạy hoàn hảo và sau khi làm mới, mọi thứ bắt đầu hoạt động trở lại. Vì vậy, câu hỏi của tôi là Internet Explorer (hoặc thậm chí các trình duyệt khác) 'hết thời gian'?

3
sphvn

Nhiều câu hỏi đến với tôi:

  1. Phiên bản IE nào?
  2. Mã đã thực hiện cuộc gọi là gì?
  3. Trình duyệt đã làm gì khi bạn quay lại nó vài ngày sau đó?
  4. Nhật ký máy chủ web của bạn chỉ ra điều gì - có trả về từ máy chủ web có mã lỗi mà JavaScript không có khả năng xử lý không?

Nói chung, nếu bạn có một đoạn mã JavaScript đang được thực thi trên bộ đếm thời gian với setTimeout thì nó sẽ chạy mãi mãi. Nhưng hãy nhớ rằng trình duyệt là phần mềm máy tính để bàn và như vậy, đôi khi có những thứ xảy ra với hệ thống có thể ảnh hưởng đến trình duyệt đó. Thật khó để suy đoán mà không biết chính xác hơn các điều kiện trải nghiệm của bạn là gì. Có thể trình duyệt đã đóng băng vì một số phần mềm hệ thống khác đang chạy. Có thể DNS của hệ thống đã bị lỗi trong một thời gian và sau đó JavaScript không xử lý tốt vấn đề đó. Có thể máy chủ phục vụ nội dung bị mất trong một giây và trả về một chuỗi không chính xác mà JavaScript của bạn không thể xử lý, sau đó, việc thực thi trang bị dừng lại. Cuối cùng, có lẽ trình duyệt tạm thời hết bộ nhớ? Nếu dữ liệu trả về cũng thêm nội dung đã thêm sự kiện vào trang, có thể bạn chỉ cần hết bộ nhớ? Đây sẽ là trường hợp nếu trang thực sự "đóng băng" - nhưng bạn có thể đã thấy cảnh báo bộ nhớ từ IE trong trường hợp đó.

Rất nhiều nội dung cho câu hỏi này và không đủ chi tiết được cung cấp.

2
artlung

Tôi sẽ không mong đợi IE hết thời gian nhưng nếu yêu cầu ajax không thành công và nó có thể không thử thử lại. Một cách tốt để xác nhận điều này sẽ là sử dụng Firefox và tải xuống một plugin có tên FireBug. Điều này sẽ cung cấp cho bạn nhật ký của tất cả các yêu cầu http/ajax được yêu cầu từ máy tính để bàn và sẽ hiển thị cho bạn nếu nó nhận được bất kỳ trạng thái lỗi nào từ máy chủ hoặc lỗi javascript.

2
AronHopkins