处理通过WSGI POST
请求上传的文件有什么好方法?
到目前为止,我能够从POST
读取原始environ[wsgi.input]
数据。此时我遇到的问题是与文件和文件本身相关的信息被捆绑成一个字符串:
'------WebKitFormBoundarymzmB1wyHKjyqZrDm Content-Disposition: form-data; name="file"; filename="new file.wav" Content-Type: audio/wav THIS IS THE CONTENT THIS IS THE CONTENT THIS IS THE CONTENT THIS IS THE CONTENT THIS IS THE CONTENT ------WebKitFormBoundarymzmB1wyHKjyqZrDm-- '
我应该使用python中的库来更干净地处理信息吗?最后,我想获取文件内容,然后转身并上传到Amazon S3。
答案 0 :(得分:2)
您可以使用cgi.FieldStorage
。
import cgi
form = cgi.FieldStorage(fp=environ['wsgi.input'], environ=environ)
f = form['file'].file
# You can use `f` as a file object: f.read(...)
答案 1 :(得分:0)
通常你需要比原始WSGI更多的抽象。考虑frameworks that run on WSGI。