2

在我的网站 (vb.net / c#) 中,有 javascript ajax 代码从数据库中获取数据并将 JSON 返回到我的页面。

如果在 ajax 即将接收 JSON 之前,浏览器关闭或页面被重定向,会发生什么情况,因为没有任何东西可以接收它?

我可以看到,因为 vb.net 是异步的,所以它继续运行并发送响应。但没有任何东西可以接收 - 响应会发生什么。

它不能凭空消失——从技术上讲会发生什么——我的服务器会崩溃吗?

4

3 回答 3

6

他们被吸进了虚空,再也不会被看到或听到。

也就是说,您的客户端 PC 仍将通过 TCP/IP 接收数据包,但 TCP/IP 堆栈不会将它们传送到任何地方。

于 2012-11-15T10:19:38.153 回答
3

垃圾收集器拆除了整个交易。

一旦 HttpContext 和 Session 从用户关闭浏览器结束,只有已经开始的请求才会继续。他们将返回数据,就像有人在深夜大喊大叫一样。下一个很可能会被垃圾收集,因为 Session 已经结束并且不再需要为线程提供服务。

于 2012-11-15T10:20:17.393 回答
1

我猜想运行浏览器的托管操作系统从服务器获取 TCP/IP 响应并丢弃它,因为没有应用程序在等待此数据。

于 2012-11-15T10:24:10.177 回答