Я делаю приложение, в котором пользователи могут загружать некоторые фотографии, чтобы другие могли их видеть. Поскольку некоторые из них могут быть немного большими, мне нужно создать меньшие изображения, чтобы дать предварительный просмотр содержимого.Как создать эскизы в GAE с помощью GCS вместо Blobstore?
У меня уже есть загруженные изображения в ГКС, в адресах с формой: «https://storage.googleapis.com/ ...», но от того, что я могу видеть в Images API docs, он использует blobstore, который я не использую (это был заменен). Как я могу обслуживать эскизы из ссылки gcs, чтобы избежать загрузки пользователем полного изображения? Я был бы очень признателен за любой пример кода.
UPDATE:
Я попытался скопировать пример с image из моего приложения, используя images.Image с именем файла, как предложено, но это дает мне TransformationError, и NotImageError, если я не попробовать какие-либо преобразования:
def get(self):
teststr ='/gs/staging.trn-test2.appspot.com/TestContainer/Barcos-2017-02-12-145657.jpg'
img = images.Image(filename=teststr)
img.resize(width=80, height=100)
thumbnail = img.execute_transforms(output_encoding=images.JPEG)
self.response.headers['Content-Type'] = 'image/jpeg'
self.response.out.write(thumbnail)
Что мне не хватает?
Эти ошибки обычно указывают на поврежденное/отсутствующее изображение. Но код выглядит нормально, файл виден, у меня нет предложений ... –
Как вы можете видеть в моем посте (ссылка на изображение) изображение есть, и оно отображается без каких-либо проблем. Вот ссылка еще раз: https://storage.googleapis.com/staging.trn-test2.appspot.com/TestContainer/Barcos-2017-02-12-145657.jpg, поэтому я не думаю, что она отсутствует или повреждена. Что еще это может быть? –