整個問題在標題中非常多。cgi.FieldStorage類如何與文件上傳一起使用?
我可以找到類的唯一文檔是非常保和cgi documentation它不會在課堂上如何接收文件,它是如何存儲在至少提,哪些功能支持等
我對上傳的文件存儲位置非常感興趣。顯然它不在內存中,因爲Bottle提到FileStorage.read()
函數在大文件上是危險的。如果將它放在磁盤上,我想將它移到永久位置,而不必通過Python讀取它,將它一點一點地複製到一個新位置。
但是我不知道從哪裏開始,因爲這個班的文檔很差。有任何想法嗎?
如果是這樣的話,我怎麼可以上傳4GB的磁盤映像,並且Python進程始終保持15M的內存使用率?再次,bottle文檔警告不要使用'FileStorage.read',因爲它會「將整個文件讀入內存」。如果文件已經在內存中,那就不會有問題了,我想。 – Hubro
對我的評論有何反應? – Hubro
我試着從[源文件](http://hg.python.org/releasing/2.7.3/file/7bb96963d067/Lib/cgi.py#l328)閱讀它,顯然你是對的!它似乎只使用StringIO進行緩衝。註釋說如果你想移動臨時文件,你應該重寫一些類的方法,但我不知道你可以讓WSGI框架使用不同的'cgi'實現。 – moschlar