小编nov*_*ket的帖子

用Flask接收gzip

我正在尝试从HTTP POST到Flask(v0.10)接收一个gzip压缩的JSON文件.我觉得在尝试打开gzip之前可能会发布一些需要删除的额外数据.

这是我的代码:

from flask import Flask, jsonify, request, abort
import gzip, StringIO
app = Flask(__name__)

# Handle posted data
@app.route('/', methods = ['POST'])
def post_gzip():

    # Check for a supported media type
    if (request.headers['Content-Type'] == 'application/x-gzip'):

        file = request.data
        f = gzip.open(file, 'rb')        

        return f;

    else:
        # 415 Unsupported Media Type
        abort(415)

if __name__ == "__main__":
    app.debug = True
    app.run()
Run Code Online (Sandbox Code Playgroud)

我正在使用cURL将压缩的JSON文件发布到Flask,如下所示:

curl -X POST -d @test.json.gz http://127.0.0.1:5000/ -H "Content-Type:application/x-gzip" -H "Content-Encoding:gzip"
Run Code Online (Sandbox Code Playgroud)

而我收到的错误是:

UnicodeDecodeError: 'utf8' codec can't decode byte 0x8b …
Run Code Online (Sandbox Code Playgroud)

python curl gzip flask

7
推荐指数
3
解决办法
6671
查看次数

尝试重命名 Redshift 集群中的数据库

我正在尝试重命名 Redshift 集群中的数据库。

连接到数据库后无法重命名数据库,因此我创建了一个临时数据库,使用 SQL Workbench 重新连接到临时数据库并发出:

ALTER DATABASE olddb RENAME to newdb;

我收到一条错误消息,指出错误:数据库“olddb”正在被其他用户访问 [SQL State=55006]

我检查了谁已连接,似乎有一些从用户rdsdb到数据库的连接。我假设这是 AWS Redshift 用于执行维护任务等的服务帐户。

当该超级用户连接时如何重命名数据库?

非常感谢。

amazon-redshift

5
推荐指数
1
解决办法
6385
查看次数

标签 统计

amazon-redshift ×1

curl ×1

flask ×1

gzip ×1

python ×1