我希望有谁能回答我关于网页刷新的一个基本问题。
我有一个dotnet and表单,用户填写一些详细信息并单击submit。网页背后的代码大约有20个功能要执行。
现在假设,当用户点击提交按钮时,网页正在执行第五个功能,同时用户刷新他的浏览器;
已经在处理的页面会发生什么?页面会立即终止吗?或者它会被允许运行到执行第20个函数?还是会销毁正在运行的页面,并创建一个新页面并将其发送到客户端?
谢谢你的回答。
发布于 2009-10-27 23:43:53
一旦从浏览器向服务器发出请求,页面就会被处理。即使用户取消或停止请求,服务器也会继续处理请求。如果用户重新加载/刷新页面,则会有另一个请求与第一个请求并行执行。
即使在PHP的情况下,服务器也不会主动检查user has aborted是否连接。当服务器试图返回请求的结果时,它才知道它已经被中止。
互联网是一个断开连接的环境。服务器对浏览器一无所知。服务器知道的唯一一件事就是已经发出了一个请求,它必须满足该请求。
发布于 2009-10-27 23:15:23
简单地说,用户正在查看的页面将丢失,除非在会话中,用户无法再次拾取该页面。但是服务器不知道用户已经断开连接,所以应用程序将继续运行,除非应用程序上存在会话/超时,即使这样,如果会话没有完成也会很奇怪。
希望这能有所帮助。
回复
发布于 2009-10-27 23:16:05
代码的执行将一直持续到最后。
https://stackoverflow.com/questions/1631486
复制相似问题