Я использую флэш-фреймворк на GAE/Python. После загрузки файла в Cloud Storage я хочу получить ссылку на файл, чтобы его можно было обслуживать. Я не могу заставить parse_file_info работать. Я искал долго и упорно и провел в течение двух дней, пытаясь сделать эту работу. Я в конце своего ума! Вы можете увидеть мои обработчики ниже:GAE + облачное хранилище - невозможно загрузить FileInfo после загрузки файла
@app.route('/upload_form', methods = ['GET'])
def upload_form():
blobupload_url = blobstore.create_upload_url('/upload', gs_bucket_name = 'mystorage')
return render_template('upload_form.html', blobupload_url = blobupload_url)
@app.route('/upload', methods = ['POST'])
def blobupload():
file_info = blobstore.parse_file_info(cgi.FieldStorage()['file'])
return file_info.gs_object_name
Эй, спасибо большое за это! но почему вы не можете использовать [fileInfo Class] (https://developers.google.com/appengine/docs/python/blobstore/fileinfoclass?hl=ru)? – jess
parse_file_info анализирует данные cgi.FieldStorage. Flask предоставляет только FileStorage, и легче было получить информацию вместо создания FieldStorage со всеми необходимыми атрибутами. –