如何使用Bottle框架在Python中发送文件作为对HTTP请求的答复?
对于上传,此代码对我有用:
@route('/upload', method='POST')
def do_upload():
category = request.forms.get('category')
upload = request.files.get('upload')
name, ext = os.path.splitext(upload.raw_filename)
if ext not in ('.png','.jpg','.jpeg'):
return 'File extension not allowed.'
save_path = category
upload.raw_filename = "hoho" + ext
upload.save(save_path) # appends upload.filename automatically
return 'OK'
只需调用Bottle的static_file函数并返回其结果即可:
@route('/static/<filename:path>')
def send_static(filename):
return static_file(filename, root='/path/to/static/files')
该示例使用url调用时/static/myfile.txt,将返回内容文件/path/to/static/files/myfile.txt。
其他SO问题(例如this)包含其他示例。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。