我正在使用Pylons Framework(1.0)开发WebApplication。一个想要的功能是上传zip存档,将它们存储在服务器上,以后能够下载它们。
我首先在我的REST控制器中做到了这一点:
def submit(self):
uploadedFile = request.POST['myFile']
path = 'some/path/in/the/filesystem'
storedFile = open(path, 'wb')
shutil.copyfileobj(uploadedFile.file, storedFile)
storedOrbjetFile.close()
不幸的是,这会导致存档文件损坏。我试图直接使用uploadedFile.value,它似乎工作,但文件副本将在后端更深,我不想将值传递给我的后端,而是文件。
我找到的替代解决方案是创建一个新的临时文件并复制其中的值。然后我可以获取tempfile的文件路径并将其路径传递给后端。
因此,几乎没有问题:
我的用例似乎很常见,所以我有点惊讶我遇到了困难..
感谢您的帮助。