2012-05-26 38 views
6

Khi tôi tạo XmlHttpRequest (thông qua $ .ajax của jQuery) thành một URL cụ thể, Chrome của tôi luôn treo mỗi lần với trạng thái theo yêu cầu 'Đang chờ xử lý'.Chrome XmlHttpRequest Treo

Sau đó, Chrome phải đóng. buộc phải từ Task Manager, và nó thể hiện các dấu hiệu chung của tình trạng lộn xộn như các tab Cookie và Scripts trống khi chúng có đầy đủ các dữ liệu tìm kiếm bình thường ngay trước đó.

Điều này là kỳ lạ bởi vì (a) đồng nghiệp của tôi, chạy một thứ dường như giống hệt nhau, không có vấn đề như vậy; (b) Tôi đã sử dụng Chrome để chạy mã này (ứng dụng JavaScript của công ty chúng tôi) trong nhiều tháng và điều này chỉ mới bắt đầu xảy ra mà không có lý do rõ ràng.

Tôi đã kiểm tra các nhật ký Apache, chúng dường như đang xử lý yêu cầu bình thường và hoàn thành, nhưng Chrome chưa bao giờ thấy câu trả lời.

Một vài cách giải thích khác: trước khi lỗi, cùng một Chrome và Apache trả về một tải trọng của JS và các tệp hình ảnh thông thường, ví dụ, mọi thứ có vẻ ổn cho đến khi không. Yêu cầu không phải là đặc biệt lớn (một vài trăm byte trong và ngoài) hoặc phức tạp trong bất kỳ cách rõ ràng nào.

Nếu ai cũng có thể cho tôi một số gợi ý về nơi cần tìm, tôi sẽ biết ơn!

+0

Một vài cách giải thích khác: trước khi không thành công, cùng một Chrome và Apache trả về một tải trọng của JS và các tệp hình ảnh bình thường, ví dụ, mọi thứ có vẻ ổn cho đến khi không. Yêu cầu không phải là đặc biệt lớn (một vài trăm byte trong và ngoài) hoặc phức tạp trong bất kỳ cách rõ ràng nào. – GregT

+0

Cảm ơn jmort253, đó là loại của bạn để viết tất cả những điều đó. – GregT

+0

Điều này có liên quan đến câu hỏi của bạn không? http://stackoverflow.com/questions/11296036/chrome-not-handling-jquery-ajax-query –

Trả lời

9

Tôi đang gặp phải hành vi tương tự với các triệu chứng hơi khác nhau. Yêu cầu ajax của tôi hoạt động tốt, mỗi yêu cầu thứ hai lên tới 6 yêu cầu, tất cả đều bắt đầu thất bại (cùng url như khi làm việc, cùng tải trọng, v.v.), nhưng trong trường hợp của tôi, chúng thậm chí không đánh máy chủ, chỉ bị kẹt trong "Đang chờ xử lý "trong Thanh tra.

Tôi không có câu trả lời cho bạn, nhưng để giúp gỡ lỗi, bạn đã thử chromes net-internals chưa?

Point trình duyệt của bạn tại địa chỉ:

chrome://net-internals/#sockets 

và/hoặc

chrome://net-internals/#events 

tôi thấy yêu cầu của tôi trong #sockets đi vào "hoạt động", nhưng không bao giờ trở lại, và trong #events tôi có thể thấy rằng yêu cầu quầy hàng sau giai đoạn HOST_RESOLVER_IMPL_REQUEST.

Tôi nghĩ rằng đó có thể là vấn đề tài nguyên do không kết thúc đúng yêu cầu, nhưng đó chỉ là suy đoán thuần túy.

+0

Tuyệt vời, cảm ơn rất nhiều, sẽ dùng thử. Không biết gì về điều đó cả. Ngẫu nhiên, tôi thấy một số truy vấn có âm tương tự trên diễn đàn hỗ trợ Chrome, hầu hết không được trả lời. – GregT

+0

Không sao cả. Đối với tôi, "không đúng yêu cầu kết thúc" là nguyên nhân, và net-internals kết thúc là hoàn hảo cho việc gỡ lỗi của tôi. –

+4

Khi tôi truy cập chrome: // net-internals/# events và truy cập URL đã gây ra sự cố, tôi đã thấy lỗi này: 'net_error = -20 (ERR_BLOCKED_BY_CLIENT)'. Hóa ra đó là Adblock Plus gây ra vấn đề. Bây giờ tôi chỉ lo lắng rằng điều này có thể xảy ra với người dùng cuối của tôi nếu họ đã cài đặt Adblock Plus. – sffc

Các vấn đề liên quan