我有一个Django应用程序接受上传jQuery uploadify,一个jQ插件,使用Flash来上传文件和进度条。Django上传失败的请求数据读取错误
文件大约在150K下工作,但更大的文件总是失败,几乎总是在大约192K(即3个块)完成,有时在160K左右。我得到的例外如下。
exceptions.IOError
request data read error
File "/usr/lib/python2.4/site-packages/django/core/handlers/wsgi.py", line 171, in _get_post
self._load_post_and_files()
File "/usr/lib/python2.4/site-packages/django/core/handlers/wsgi.py", line 137, in _load_post_and_files
self._post, self._files = self.parse_file_upload(self.META, self.environ[\'wsgi.input\'])
File "/usr/lib/python2.4/site-packages/django/http/__init__.py", line 124, in parse_file_upload
return parser.parse()
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 192, in parse
for chunk in field_stream:
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 314, in next
output = self._producer.next()
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 468, in next
for bytes in stream:
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 314, in next
output = self._producer.next()
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 375, in next
data = self.flo.read(self.chunk_size)
File "/usr/lib/python2.4/site-packages/django/http/multipartparser.py", line 405, in read
return self._file.read(num_bytes)
当在Django开发服务器上本地运行时,大文件正常工作。
我试过设置我的FILE_UPLOAD_HANDLERS = ("django.core.files.uploadhandler.TemporaryFileUploadHandler",)
以防它是内存上传处理程序,但它没有区别。
有谁知道如何解决这个问题?
只是测试上传上ANOT大文件她的网站没有问题。 我正在运行python 2.4,django 1.1,mod_wsgi。 我现在试着在没有Flash上传器的情况下测试上传。 – Jake 2010-04-14 23:27:50
我可以使用Django管理界面(普通窗体文件域)将其上传到同一服务器上的不同Django项目。因此,这可能是一个闪光或高调的问题,我不知道该从哪里开始工作。 – Jake 2010-04-14 23:43:16
另一个更新,我创建了一个表单发布到与uploadify相同的地方,并且我得到了同样的错误。 所以...不是我的浏览器或互联网连接,而不是我的服务器,不上传。 我可以看到,在工程和不工作的项目之间的主要区别在于使用django管理界面上传到模型文件字段,而破损的文件只是将下载文件放到文件夹中。但是我的错误是读取错误。 – Jake 2010-04-15 00:27:01