繁体   English   中英

通过http请求将连续的文本数据从Java代码发送到html

[英]sending continuous text data from java code to html via http request

我正在开发一个应用程序,在该应用程序中,我正在通过angular执行http post请求,然后Java代码接收到该请求,代码执行了它的工作,并生成约50-60行的日志,每秒钟创建一行。 我想在生成它们的html页面上显示这些日志,现在我正在收集所有日志,并在请求完成后显示它们? 可以连续进行吗?

JAVA代码

Java代码创建大小为50-60的日志数组,需要60-90秒才能完成操作,在将其转换为JSON之后,我将使用以下代码发送数组

response.getWriter.write(applogs)

JAVASCRIPT代码

var httpPostData = function (postparameters,postData){

return $http ({           
method  : 'POST',
url     : URL,
params  : postparameters,
headers: headers,
data    : postData
}).success (function (responseData){
     return responseData.data;
})
}

var addAppPromise = httpPostData (restartAppParams,app);
    addAppPromise.then(function (logs){
      $scope.logs = logs.data;
})         

HTML代码

<span ng-repeat="log in logs">{{log}}<br></span>

您至少有两个选择:

  1. (较笨拙但又简单又快速)使服务立即响应(不要等待生成“东西”)并创建第二个服务,该服务将返回到目前为止已创建的日志。 然后在JS中实现轮询:在较短的固定间隔内调用第二个服务并更新视图。
  2. 使用EventSource获取服务器发送的事件。 您也可以使用websockets,但是由于只希望服务器提供客户端,因此EventSource应该足够了。 但是,请记住,此API将需要用于IE / Edge的polyfill和服务器端的特殊处理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM