appengine сохранить изображение в Blobstore из URL

1

Я пытаюсь загрузить изображение в blobstore и вернуть обслуживающий URL, вот где im на данный момент:

url ='http://ws.audioscrobbler.com/2.0/?method=track.getinfo&api_key=b25b959554ed76058ac220b7b2e0a026&artist=blink-182&track=dammit&format=json'
result = urlfetch.fetch(url=url, deadline=10, method=urlfetch.GET,).content

    if result:
        data = json.loads(result)
        imageUrl = data['track']['album']['image'][3]['#text']


        result = urlfetch.fetch(imageUrl)
        if result.status_code == 200:
            image_result = db.Blob(result.content)

Мне нужно вернуть URL-адрес служащего, чтобы сохранить его с другим объектом.

любая помощь приветствуется

спасибо J

Теги:
google-app-engine
blobstore

1 ответ

2
Лучший ответ

Вы путаете две вещи.

db.Blob - это тип db.Blob хранящегося в модели. У него нет "обслуживающего URL". Если вы хотите его обслуживать, вам нужно написать код представления для загрузки экземпляра модели, который он хранит в хранилище данных, и напрямую вернуть данные blob.

Если вы хотите хранить капли и обслуживать их независимо от моделей хранилищ данных, вам необходимо использовать (экспериментальный) API blobstore.

В документации есть хорошая запись о том, как программно записывать файлы в blobstore. Затем вы можете передать это API изображений для получения URL-адреса:

from google.appengine.api import images
url = images.get_serving_url(blob_key)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню