我有一個簡單的應用程序,它向客戶端請求傳入數據,進行計算並提供答案。計算由服務器執行幾秒鐘,因此,所有這些客戶端都會看到數據輸入表單並嘗試多次推送「發送」按鈕。顯然,服務器處理所有這些請求。解決這個問題的更好方法是使用一些「等待」頁面。但是我找不到如何先渲染「等待」頁面並在計算之後渲染最終頁面的方式。如何爲1個請求呈現2個頁面(快速js)
不幸的是我不能在客戶端使用javascripts。
app.post('/answer', function (req, res, next)
{
res.render('pleaseWait.jade');
someLongFunction();
next(req, res);
}, function(req, res)
{
res.render('targetPage.jade');
});
這樣的代碼不能正常工作。
任何想法如何組織一個接一個地呈現兩個頁面?
這不是微不足道的,它可能更容易阻止從瀏覽器發送多個請求(通過禁用_Send_按鈕或跟蹤是否已經有一個計算被激活)。 – robertklep
感謝您的快速回答。我不能在客戶端使用js,因此無法在瀏覽器中更改DOM。無論如何,客戶端不知道推送SEND按鈕後會發生什麼。向客戶通知他的請求已被接受並處理 –
@AndreyErmolovich爲什麼不直接向服務器查詢計算結果並在完成時執行客戶端重定向?在那裏沒有DOM操作...... – eenagy