Java Spring延迟结果进度条
我使用Spring deferredResult在客户机和服务器之间发出异步请求。我知道使用这种技术的原因正是为了使客户机和服务器之间的请求保持空闲,直到服务器完成任务 但是我想知道是否有可能服务器会让客户端知道完成任务需要多少时间。 我希望这些信息在客户端提供一个进度条 有什么建议吗Java Spring延迟结果进度条,java,jquery,spring,Java,Jquery,Spring,我使用Spring deferredResult在客户机和服务器之间发出异步请求。我知道使用这种技术的原因正是为了使客户机和服务器之间的请求保持空闲,直到服务器完成任务 但是我想知道是否有可能服务器会让客户端知道完成任务需要多少时间。 我希望这些信息在客户端提供一个进度条 有什么建议吗 关于。我不这么认为,因为服务器的第一个响应将是异步调用请求的数据。需要第二次异步调用才能返回一些数据,例如服务器的平均响应时间,但即使这样,服务器也无法确定服务器和客户端之间的延迟时间,服务器只能确定运行异步请求
关于。我不这么认为,因为服务器的第一个响应将是异步调用请求的数据。需要第二次异步调用才能返回一些数据,例如服务器的平均响应时间,但即使这样,服务器也无法确定服务器和客户端之间的延迟时间,服务器只能确定运行异步请求调用的进程所需的时间。您可以设置一个超时来取消请求(或者至少忽略响应),但这将在客户端进行。我使用了延迟结果来实现类似的功能。在客户端编写一个javascript方法,该方法将再次调用自身。e、 g
function updateDisplay(finished){
if(!finished){
$.ajax({
url:"url to the function",
success:function(){
updateDisplay
this.data: //status
},
complete:funtion (){
updateDisplay(this.data);
}
}
}
}
通过这种方式,您可以将定期信息从服务器发送到客户端并更新状态。延迟结果检查是否完成的作业是由多个异步请求完成的,因此我认为确定进度并不容易。我觉得我想要达到的目标有点过分了,但是谢谢!。