Tôi muốn tránh sử dụng ứng dụng web từ GAE, vì vậy tôi sử dụng mã này để tải lên một hình ảnh để các Blobstore (đoạn mã từ: http://flask.pocoo.org/mailinglist/archive/2011/1/8/app-engine-blobstore/#7fd7aa9a5c82a6d2bf78ccd25084ac3b)Phục vụ hình ảnh từ GAE kho dữ liệu với Flask (python)
@app.route("/upload", methods=['POST'])
def upload():
if request.method == 'POST':
f = request.files['file']
header = f.headers['Content-Type']
parsed_header = parse_options_header(header)
blob_key = parsed_header[1]['blob-key']
return blob_key
nó trả về những gì nó có vẻ là thực sự là một Blobkey, mà là một cái gì đó như thế này:
2I9oX6J0U5nBCVw8kEndpw ==
sau đó tôi cố gắng để hiển thị hình ảnh Blob thời gian gần đây được lưu trữ với mã này:
@app.route("/testimgdisplay")
def test_img_display():
response = make_response(db.get("2I9oX6J0U5nBCVw8kEndpw=="))
response.headers['Content-Type'] = 'image/png'
return response
Đáng buồn là phần này không làm việc, tôi nhận được lỗi sau:
BadKeyError: Invalid string key 2I9oX6J0U5nBCVw8kEndpw==
Do you guys đã phải đối mặt này lỗi trước? Có vẻ như Blobkey được định dạng tốt và tôi không thể tìm thấy manh mối nào.
Tôi nghĩ rằng vấn đề là những gì bạn đang nhận được như blobkey dường như được mã hóa base64. –
Thx, nó đẩy tôi đi đúng hướng;) – Koffee