Tôi đang cố gắng kết nối với máy chủ bằng cách sử dụng đối tượng XMLHttpRequest để đăng dữ liệu vào các thời điểm khác nhau. Tôi tạo ra một đối tượng và "kết nối" đến máy chủ như vậy:Đối tượng XMLHttpRequest có đóng sau khi nhận được phản hồi không?
var xhr = new XMLHttpRequest();
xhr.open("post", location, true);
xhr.send(); //Is this send call needed to open the connection?
Và tại một điểm sau này trong thời gian, tôi gọi một cái gì đó như thế này:
xhr.send("Something to send");
Tuy nhiên, nhìn vào các nhà phát triển giao diện điều khiển, dường như chỉ có yêu cầu ban đầu đã được thực hiện (và đã trả lời thành công). Yêu cầu thứ hai dường như không gửi. Tôi đang cố gắng thu hẹp những gì có thể là vấn đề, vì vậy tôi nghĩ: có thể kết nối được đóng lại sau khi nhận được phản hồi; Tại sao nó sẽ được mở? Vì vậy, câu hỏi của tôi: Là kết nối đối tượng XMLHttpRequest đóng lại một khi nó nhận được một phản ứng? Nếu vậy, cách tốt nhất để mô phỏng một kết nối mở liên tục (để liên tục kết nối lại là gì?)?
Bạn cần phải tạo một đối tượng yêu cầu mới cho một yêu cầu khác. Bạn không nên gọi 'send' nhiều lần trên cùng một đối tượng. – Bergi
@Bergi Sẽ không thực tế hơn khi chỉ gọi lại phương thức mở trên đối tượng? Hay điều đó sẽ không hoạt động? – chRyNaN
Tôi không thấy điều đó sẽ "thực tế hơn". Bạn nghĩ gì bạn đạt được bằng cách [tái sử dụng đối tượng] (http://stackoverflow.com/q/11079543/1048572)? IIRC, một số trình duyệt cũ hơn có một vài lỗi với điều đó. – Bergi