0
AJAX和Django是否可以作爲服務器讓用戶的JS發出AJAX請求,然後讓Django在很長的時間內響應用戶的請求,也就是說,當服務器有用戶的JS想要什麼?以後迴應AJAX請求
我的想法:
-AJAX requests for object
-Django caches request
-When object that user wants it available, Django signal tells
view to respond to that request with the object
不過,我不知道如何讓JS腳本繼續做其他的事情,然後參加到服務器的響應時,它得到它,或有AJAX不計算服務器沒有響應該對象(或者根本不想)作爲錯誤。這可能沒有JS無限循環的AJAX請求,直到它得到它想要的?這可以用Django完成,只要給用戶提供對象,而不需要AJAX請求它們呢?
默認情況下,AJAX請求是_asynchronous_,因此它將在此期間恢復其他操作。你有沒有看過使用[Promises](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Promise)? –
我對Django並不熟悉,但是你所描述的看起來像是一個長輪詢或websocket的應用程序。在長輪詢的情況下,您可以發送請求,後端將用可定期檢查的端點響應該請求,以查看結果是否已準備好返回,並在返回時返回。使用websockets,您可以通過套接字發送請求,而後端只需在套接字中通過套接字返回結果即可。 – Taplar
@ Pot-Nut正是我想要的!謝謝。 – dylan7