2011-04-05 25 views
1

我已經在我的網站上寫過搜索,現在我正在嘗試在每次開始打印時進行搜索。所以,現在我發送了很多包含不同文本的請求,以便逐一搜索使用AJAX,並且在前一個請求完成之前,每個下一個請求都必須等待。 Apperently我不需要舊的請求來回答,但我需要唯一的一個響應爲最後的請求。 我該如何殺死Django中實際請求的隊列?我該如何取消Django中的請求

有人知道答案嗎?

+0

正在發生的其他事情正在導致請求被序列化。嘗試添加更多信息。 – 2011-04-05 16:35:19

回答

1

在服務器端,取消請求可能太遲了,但您可以忽略客戶端的響應。我會建議在發送一個新的請求之前中止一個掛起的AJAX請求。

方法如下: Abort Ajax requests using jQuery

+0

如果請求已被髮送,則這是無用的,因爲鎖在服務器端。這是應該中止的。 – tiagoboldt 2011-04-05 17:45:24

1

更簡單的方法來做到這一點可能是通過發送請求到服務器之前等待一下。每次輸入後,設置一個停止前一個(setTimout)的定時器,並且只在滿足超時時發送請求。

如果一個請求已經執行並且沒有返回,你仍然可以按照另一個答案中的建議殺死它。

我不知道如何停止使用django的其他請求 - 希望它甚至不可能,如果請求可能被其他人殺死,它將成爲安全線程。