Python Web框架Flask中使用新浪SAE云存储实例

yipeiwu_com5年前Python基础

对于部署在新浪应用引擎SAE上的项目,使用新浪SAE云存储是不错的存储方案。

新浪SAE云存储仅能在SAE环境中正常使用,对它进行简单封装后,可以直接在Flask中使用,项目代码见GitHub上Flask-SaeStorage

使用示例代码:

复制代码 代码如下:

from flask import Flask
from flask_saestorage import SaeStorage
 
SAE_ACCESS_KEY = 'SAE Access Key'
SAE_SECRET_KEY = 'SAE Secret Key'
SAE_APP_NAME = 'SAE App Name'
SAE_BUCKET_NAME = 'SAE Bucket Name'
 
app = Flask(__name__)
app.config.from_object(__name__)
sae_storage = SaeStorage(app)
# 或者
# sae_storage = SaeStorage()
# sae_storage.init_app(app)
 
# 保存文件到SAE Storage
@app.route('/save')
def save():
    data = 'data to save'
    filename = 'filename'
    ret = sae_storage.save(data, filename)
    return str(ret)
 
# 删除SAE Storage中的文件
@app.route('/delete')
def delete():
    filename = 'filename'
    ret = sae_storage.delete(filename)
    return str(ret)
 
# 根据文件名获取对应的公开URL
@app.route('/url')
def url():
    filename = 'filename'
    return sae_storage.url(filename)

相关文章

对python中的try、except、finally 执行顺序详解

如下所示: def test1(): try: print('to do stuff') raise Exception('hehe') print('to r...

由浅入深讲解python中的yield与generator

前言 本文将由浅入深详细介绍yield以及generator,包括以下内容:什么generator,生成generator的方法,generator的特点,generator基础及高级应...

Python两台电脑实现TCP通信的方法示例

为了实现Nao机器人与电脑端的TCP通信,于是研究了一下Python实现TCP通信,在网上也看到了很多例子,但大多都是在一台机器上验证。在两台机器上使用,出了一些小故障。 注意:若两台电...

解决python线程卡死的问题

1. top命令和日志方式判定卡死的位置 python代码忽然卡死,日志不输出,通过如下方式可以确定线程确实已经死掉了: # top 命令 top命令可以看到机器上所有线程的执行情况,%...

初步解析Python下的多进程编程

要让Python程序实现多进程(multiprocessing),我们先了解操作系统的相关知识。 Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,...