Чтобы загрузить файл в blobstore или в GCS с использованием API Blobstore, сначала необходимо загрузить URL-адрес загрузки, а затем сделать явный запрос на загрузку Сервер хранения.
После того как файл был правильно сохранен, сервер перезаписывает запрос обработчику загрузки, который может быть обработкой, связанной с данными, связанными с файлом.GAE - Blobstore - Как правильно реагировать на сбои обработчика загрузки
Представьте, что теперь необходимо связать каждому файлу поле F, содержимое которого необходимо проверить. Если контент хорошо сформирован, можно просто сохранить его, например, вместе с информацией о файле в базе данных, но в противном случае, если F не подходит, просто нужно прервать процесс, говорящий пользователю, что F не является корректным.
Но в этом случае файл сохраняется в хранилище blobstore? Что делать, чтобы быть уверен, что файлы не сохранены?
То, что я думал, что это: просто я поймать исключение, и я удалить файл с помощью blobstore.delete (...) ...
Но он может не работать
Поэтому есть ли способ, чтобы иметь файл удалены с вероятностью 1, или есть более умный способ сделать сбои, не создавая отходов?
Почему BlobInfo.delete лучше, чем другой? – LJSilver
Не лучше, BlobInfo делегирует blobstore.delete, передавая свой собственный ключ. Это просто немного чище, поскольку у вас уже есть BlobInfo. – ozarov
Хорошо спасибо. Я пойду глубоко в идею временных файлов, спасибо! – LJSilver