如何在接受之前检查文件大小和类型?

时间:2011-07-31 08:41:24

标签: google-app-engine

以下是我接受用户上传文件的代码:

def post(self):

    logging.info('(POST) Uploading new file')
    # saving file in the database
    file = Files()
    file.file = db.Blob(self.request.body)        
    file.put()

如何避免上传大于100Kb的文件以及哪种文件类型不是.torrent? (我相信我应该验证文件的mime类型?)

1 个答案:

答案 0 :(得分:1)

您无法阻止文件上传 - 在您的请求处理程序执行时,该文件已被上传。您所能做的就是丢弃该文件并返回错误消息。

由于文件正在作为请求正文而非HTML表单上传,因此您可以通过获取self.request.headers["Content-Type"]来确定内容类型,并使用len(self.request.body)确定大小。< / p>