Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.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
Python Django如何处理被取消或中断的请求?_Python_Django - Fatal编程技术网

Python Django如何处理被取消或中断的请求?

Python Django如何处理被取消或中断的请求?,python,django,Python,Django,比方说,对于django应用程序,我通过浏览器提交请求。在处理的中间,它创建一个本地资源(例如,一个文件),它将在请求结束时被删除。 现在,我要对事情施加压力。在我的请求创建了资源之后,但在删除之前,我会在浏览器中取消该请求。django是否仍然完成请求并删除资源?django代码中是否有任何方法可以知道客户端连接何时关闭,可能是通过某种信号关闭的?你所说的“在我的浏览器中取消请求”是什么意思,一旦你发送了请求,浏览器的工作就完成了,它只会等待响应。这可能回答了我的问题。如果它坐在那里等待响应,

比方说,对于django应用程序,我通过浏览器提交请求。在处理的中间,它创建一个本地资源(例如,一个文件),它将在请求结束时被删除。
现在,我要对事情施加压力。在我的请求创建了资源之后,但在删除之前,我会在浏览器中取消该请求。django是否仍然完成请求并删除资源?django代码中是否有任何方法可以知道客户端连接何时关闭,可能是通过某种信号关闭的?

你所说的“在我的浏览器中取消请求”是什么意思,一旦你发送了请求,浏览器的工作就完成了,它只会等待响应。这可能回答了我的问题。如果它坐在那里等待响应,而我取消了,那么django方面不会发生任何事情。它将只完成请求,并尝试返回它。是否仍有方法检查客户端连接在django内是否仍然有效,或者是否在django的范围之外?它在django的范围之外,如果您尝试执行长时间运行的任务,那么您可能正在寻找芹菜。您确定没有连接吗?在客户端收到响应之前,应该存在连接。。。这里[1]解释了为什么Django在请求处理结束之前不会收到客户端断开连接的通知。考虑到这一点,我想也许您可以使用[2]来测试连接是否断开,但我认为这将是一个可怕的想法,即使它起作用。[1]: [2]: