Я хочу загрузить изображение в blobstore, потому что я хочу поддерживать файлы размером более 1 МБ. Теперь единственный способ, которым я могу найти, - это клиенту выдать POST, где он отправляет метаданные, такие как геопозиционирование, теги и что-нет, которые сервер помещает в объект. В этом объекте сервер также кладет ключ blob, где фактические данные изображения будут сохранены, и сервер завершает запрос, возвращая клиенту URL-адрес, возвращаемый create_upload_url(). Это прекрасно работает, однако я могу получить несогласованность, например, если второй запрос никогда не выдается, и, следовательно, blob никогда не заполняется. Сущность теперь указывает на пустой капли.Google App Engine: загружать файл и другие поля по тому же запросу
Единственное решение этой проблемы, которое я вижу, - это запустить отложенную задачу, которая будет проверять, была ли заполнена блобом загрузка. Я не большой поклонник этого решения, поэтому я предполагаю, что у кого-то есть лучшее решение.
Клиент? Какой клиент: приложение или форма? – voscausa
все в порядке в соответствии с логикой. может быть мобильным приложением, скриптом python, запущенным на оболочке, или чем-то запущенным в браузере (например, js). – marcorossi
Вы должны отправить многостраничную почту в URL-адрес для загрузки. – voscausa