Django - 30秒后Ajax请求中止而没有错误

时间:2014-08-22 16:38:42

标签: ajax django

我有一个ajax请求,触发一个可能对服务器来说是密集型资源的函数。 30秒后,请求中止而服务器没有错误。如果我使用较小的数据集,则请求成功完成。

实际上,我正在使用Django的runserver。

这次堕胎可能是什么原因?

修改

奇怪的是,堕胎几分钟后就出现了服务器错误:

[22/Aug/2014 12:38:20] "POST /basqui/layer/shapefile/simplify HTTP/1.1" 200 16
Traceback (most recent call last):
  File "C:\Python27\lib\wsgiref\handlers.py", line 86, in run
    self.finish_response()
  File "C:\Python27\lib\wsgiref\handlers.py", line 128, in finish_response
    self.write(data)
  File "C:\Python27\lib\wsgiref\handlers.py", line 212, in write
    self.send_headers()
  File "C:\Python27\lib\wsgiref\handlers.py", line 270, in send_headers
    self.send_preamble()
  File "C:\Python27\lib\wsgiref\handlers.py", line 194, in send_preamble
    'Date: %s\r\n' % format_date_time(time.time())
  File "C:\Python27\lib\socket.py", line 324, in write
    self.flush()
  File "C:\Python27\lib\socket.py", line 303, in flush
    self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 10053] Une connexion Útablie a ÚtÚ abandonnÚe par un logiciel de v
otre ordinateur h¶te
[22/Aug/2014 12:38:20] "POST /basqui/layer/shapefile/simplify HTTP/1.1" 500 59

1 个答案:

答案 0 :(得分:1)

通常AJAX-Request有一定的超时。对于jQuery,您可以设置超时(请参阅jQuery docs中的timeout)。

Django中的错误导致了想要在已经死亡的连接上发送对请求的响应(因为超时)。