read()
メモリを使うので、その操作は本当に怖いです。たとえば、1 GB のファイルをアップロードすることで、誰かが私のサーバーに DDoS 攻撃を仕掛けることができますよね?
name = request.forms.get('name')
data = request.files.get('data')
if name and data.file:
raw = data.file.read() # This is dangerous for big files
filename = data.filename
return "Hello %s! You uploaded %s (%d bytes)." % (name, filename, len(raw))
アップロードされたファイルのサイズを取得するための安全な解決策はありますか? 1 つの推測として、ファイル システムからファイル サイズを取得することが考えられます。request.files.get('data')
おそらく一時ファイルのどこかに保存されていますよね?