Python Web框架Flask中使用百度云存储BCS实例
对于部署在百度应用引擎BAE上的项目,使用百度云存储BCS(BaiduCloudStorage)是不错的存储方案。
百度云存储已有PythonSDK,对它进行简单封装后,就可以直接在Flask中使用了,项目代码见GitHub上Flask-BCS。
使用示例代码:
fromflaskimportFlask fromflask_bcsimportBCS BCS_HOST='BCSHOST' BCS_ACCESS_KEY='BCSAccessKey' BCS_SECRET_KEY='BCSSecretKey' BCS_BUCKET_NAME='BCSBucketName' app=Flask(__name__) app.config.from_object(__name__) bcs=BCS(app) #或者 #bcs=BCS() #bcs.init_app(app) #保存文件到BCS @app.route('/save') defsave(): data='datatosave' filename='filename' allow_referers=['http://*.duapp.com/*','http://zhangxc.com/*'] #不设置allow_referers为完全public ret=bcs.save(data,filename,allow_referers) returnstr(ret) #删除BCS中的文件 @app.route('/delete') defdelete(): filename='filename' ret=bcs.delete(filename) returnstr(ret) #根据文件名获取对应的公开URL @app.route('/url') defurl(): filename='filename' returnbcs.url(filename)