2010-07-23 81 views
6

如果一個GET請求作出如下執行GET請求 - 使用Javascript

$(window).bind('beforeunload', function() { 
    // GET request 
}); 

,並在頁面拋棄完成GET請求之前

將在目標服務器仍然處理請求?或者它會以某種方式消失?


我想送的「beforeunload」發射服務器的數據,但沒有從用戶偷沒用毫秒。

如果有人能幫助我,這將是非常有用的。

回答

1

如果它是一個異步請求,那麼服務器可能會處理它(如果它接收到請求),但我不知道是否可以保證請求將在頁面卸載之前通過,或者如果它將被處理 - 這可能取決於實際的網絡服務器(其他人可能有更多的信息)。如果您發出同步請求,該頁面將一直等到請求完成並返回響應(因此在這種情況下,處理將得到保證)。但是,這意味着您的瀏覽器將被鎖定,直到該請求完成,這可能不合意。

+0

我同意,我不會爲需要依賴請求的任何事情做到這一點。 – 2010-07-23 18:51:48

+0

@Joe是的,一般來說這不是很可靠。 – 2010-07-23 18:57:09

+0

@Joe @Vivin謝謝你的回覆! =)成功率必須達到90%以上? – RadiantHex 2010-07-23 22:57:09

1

在大多數情況下是的,但它取決於Web應用程序服務器。有些人可以檢測到斷開連接並停止請求。

+1

感謝您的回覆! =)我使用python,並查看各種網絡庫。 – RadiantHex 2010-07-23 18:47:25