2015-10-09 36 views
0

這是可能的情況。Ajax請求次數是否可以從以前的某個請求中獲得最終結果?

用戶點擊一個按鈕,該按鈕會對MVC c#控制器操作進行ajax調用,該操作執行大量計算並返回json。 如果用戶快速點擊按鈕x最後一次json結果有可能是前一次x-1請求的結果?

+0

TCP/IP的工作方式是否保證順序? –

+0

想要的行爲是什麼? (你會考慮在服務器上添加一個定時器嗎?或者更好的方法是在javascript中控制嗎?) – zipzit

+0

最後一次點擊按鈕將被最後處理。但是,如果請求的處理速度不同,那麼我不確定這是怎麼回事 –

回答

1

要回答你的問題,是的,這是可能的。這甚至不可能。

+0

您是否知道排隊請求的任何方式,並確保最後一個結果來自最後一個請求。我想一個明顯的解決方案是防止多個請求。另一個將是ajax請求放棄先前的請求,然後執行它自己。我不知道這將如何影響服務器部分 - 我想在MVC控制器的情況下仍然會執行請求,但只是javascript部分不會期望結果。 –

+0

簡單的方法是建立你自己的請求隊列,當有一個請求進入時,然後請求隊列中的下一個請求。或者如您所說,取消先前的請求併發出新的請求。 –

1

是的,這可能取決於請求的處理速度。

我遇到了類似的建議下降問題。用戶輸入類型很快,結果以不連貫的方式附加。

+0

你是如何解決這個問題的?在製作新的請求之前您是否放棄了最後的請求? –

+0

它有點不同。每當一個新的請求被觸發時,我將刪除舊的結果並開始考慮新的結果並使用它們 – Tej

相關問題