Python Web框架Flask中使用百度云存储BCS实例

yipeiwu_com6年前Python基础

对于部署在百度应用引擎BAE上的项目,使用百度云存储BCS(Baidu Cloud Storage)是不错的存储方案。

百度云存储已有Python SDK,对它进行简单封装后,就可以直接在Flask中使用了,项目代码见GitHub上Flask-BCS

使用示例代码:

复制代码 代码如下:

from flask import Flask
from flask_bcs import BCS
 
BCS_HOST = 'BCS HOST'
BCS_ACCESS_KEY = 'BCS Access Key'
BCS_SECRET_KEY = 'BCS Secret Key'
BCS_BUCKET_NAME = 'BCS Bucket Name'
 
app = Flask(__name__)
app.config.from_object(__name__)
bcs = BCS(app)
# 或者
# bcs = BCS()
# bcs.init_app(app)
 
# 保存文件到BCS
@app.route('/save')
def save():
    data = 'data to save'
    filename = 'filename'
    allow_referers = ['http://*.duapp.com/*', 'http://zhangxc.com/*']
    # 不设置allow_referers为完全public
    ret = bcs.save(data, filename, allow_referers)
    return str(ret)
 
# 删除BCS中的文件
@app.route('/delete')
def delete():
    filename = 'filename'
    ret = bcs.delete(filename)
    return str(ret)
 
# 根据文件名获取对应的公开URL
@app.route('/url')
def url():
    filename = 'filename'
    return bcs.url(filename)

相关文章

Django框架多表查询实例分析

本文实例讲述了Django框架多表查询。分享给大家供大家参考,具体如下: 多表查询是模型层的重要功能之一, Django提供了一套基于关联字段独特的解决方案. ForeignKey 来自...

Python中处理字符串的相关的len()方法的使用简介

 len()方法返回字符串的长度。 语法 以下是len()方法的语法: len( str ) 参数     NA 返回值 此方法...

python引入不同文件夹下的自定义模块方法

python引入不同文件夹下的自定义模块方法

初学Python,这个问题搞了我好久,现在来分享下我的解决思路,希望可以帮到大家。 先说下python引入模块的顺序:首先现在当前文件夹下查找,如果没有找到则查找Python系统变量中的...

Python去掉字符串中空格的方法

我们经常在处理字符串时遇到有很多空格的问题,一个一个的去手动删除不是我们程序员应该做的事情,今天这篇技巧的文章【听图阁-专注于Python设计】就来给大家讲一下,如何用Python去除字...

Pycharm取消py脚本中SQL识别的方法

Pycharm取消py脚本中SQL识别的方法

Pycharm默认可以识别py脚本中的SQL语句,本身很不错,但当SQL拼接时就显示的代码特别难看,找了好久,终于知道怎么关闭SQL识别功能了。 如下图,把勾去掉就可以了。 以上这篇P...