Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 让服务器代码在处理时继续将数据发送回浏览器_Jquery_Asp.net - Fatal编程技术网

Jquery 让服务器代码在处理时继续将数据发送回浏览器

Jquery 让服务器代码在处理时继续将数据发送回浏览器,jquery,asp.net,Jquery,Asp.net,在我的ASP.NET应用程序中,我希望浏览器页面调用服务器上的方法。该方法需要执行一个漫长的过程,我希望它定期将数据发送回客户端,并使用客户端连接到服务器时建立的连接。但是,我不希望在服务器完成其进程之前关闭连接。这可能吗 使用jQuery执行此操作会很好。我正在运行ASP.NET。您可以发出一个ajax请求,启动漫长的过程,然后在这个漫长的过程中使用要发送回的数据设置会话值 在触发第一个ajax请求后,您可以每隔10秒左右发送另一个请求,这样就可以简单地返回您之前设置的会话值 对于jquery

在我的ASP.NET应用程序中,我希望浏览器页面调用服务器上的方法。该方法需要执行一个漫长的过程,我希望它定期将数据发送回客户端,并使用客户端连接到服务器时建立的连接。但是,我不希望在服务器完成其进程之前关闭连接。这可能吗


使用jQuery执行此操作会很好。我正在运行ASP.NET。

您可以发出一个ajax请求,启动漫长的过程,然后在这个漫长的过程中使用要发送回的数据设置会话值

在触发第一个ajax请求后,您可以每隔10秒左右发送另一个请求,这样就可以简单地返回您之前设置的会话值

对于jquery端,类似这样的内容:

var completed = false;

$.ajax({
  url: '/lengthyprocess',
  success: function () {
    completed = true;
  }
});


function checkStatus() {
  $.ajax({
    url: '/lengthyprocessstatus',
    success: function (response) {
      $('#status').html(response);
      if (!completed) {
        setTimeout(checkStatus, 10000);
      }
    }
  });
}

checkStatus();

您可以使用web套接字

var connection=newwebsocket('ws://serverip')

// Log messages from the server
connection.onmessage = function (e) {
if(e.data == "predefined value"){
  connection.close();
}else{
  console.log('Receieved from Server: ' + e.data);
}
};