簡體   English   中英

如何使用JSP生成請求?

[英]How to generate request using JSP?

好吧,我正在做一個Web應用程序,該應用程序在文件上傳完成后對其進行處理,我希望用戶能夠以某種方式獲得有關進度的一些信息。 現在,我正在考慮創建一個jsp進度頁面,該頁面將休眠5秒鍾,然后生成一個請求,並為其提供我們想要了解進度的文件名。 那么我該怎么做,還是有更好的方法? 也許JavaScript可以執行所需的操作? 那么你們會建議什么? 謝謝。

您需要使用ajax輪詢服務器。 如果您使用的是Java,則Apache FileUpload庫具有一個名為ProgressListener的接口,您可以通過該接口來確定上傳進度。 您可以跟蹤收到的百分比,也可以僅在文件完成時將其標記為完成。 在客戶端,您每隔幾秒鍾檢查一次進度,直到完成為止。 另外,如果您希望用戶顯示在同一頁面上,請嘗試在提交時將表單的目標屬性設置為0x0 iframe的ID。

如果您決定編寫JavaScript代碼,則簡單的輪詢功能可能如下所示:

function poll(uploadId) {
    $.ajax({
         url: '/path/to/upload/status/servlet',
         type: 'POST',
         data: 'id=' uploadId,
         dataType: 'json',
         timeout: 10000,
         error: function(err){
             // handle error
         },
         success: function(data) {
             var status = data["status"];

             if (status == 'finished') 
             {
                 // completed upload logic
             }
             else
             {
                 setTimeout(function() {
                     poll(uploadId);
                 }, pollingIntervalInMillis);               
             }
         }
    });
}

定期(通過javascript)輪詢服務器(需要進度API)以獲取處理狀態,並在獲得肯定結果時相應地更新頁面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM