Python: Возможно ли загружать изображения в хранилище Firebase, используя URL-адрес изображения, а не файл изображения?

#python #firebase #firebase-storage

#python #firebase #firebase-storage

Вопрос:

Я пытаюсь использовать Python, Reddit API и Firebase для хранения изображений из reddit в хранилище Firebase, а затем поместить URL-адрес из хранилища firebase в документ.

Прямо сейчас я просто сохраняю URL-адрес, предоставляемый reddit api, в базе данных Firebase моего проекта. НО это проблема, поскольку иногда эти URL-адреса «становятся плохими и истекают», что означает, что когда я беру документ и отображаю сохраненный URL-адрес, я получаю ошибку.

Вот как я получаю информацию перед созданием документа в firebase

 function getJSON(sub){
    var ret;

    var yourUrl="https://www.reddit.com/r/" sub ".json";

    fetch(yourUrl).then(response => {
        return response.json();
    }).then(function(data){
        var i = 5;
        list= data.data.children
            curlist = list[i].data
            if(curlist.domain==='i.redd.it'){
                if(curlist.post_hint==='image'){
                    var url =curlist.url;
                    var author=curlist.author;
                    var time=curlist.created_utc;
                    var score = curlist.score;
                    sendToFirebase(url,author,sub,time,score);
            }

            }
    }).catch(err => {
    });
}
  

Что я хотел бы сделать вместо размещения URL-адреса reddit в документе, так это взять этот URL-адрес reddit и сохранить изображение, которое находится в конце этого URL-адреса, в моем хранилище Firebase, чтобы таким образом я мог взять URL-адрес изображения, который хранится в хранилище Firebase, и поместить его в документ.

Комментарии:

1. Вам нужно будет загрузить файл с URL-адреса локально, а затем загрузить его в облачное хранилище.

Ответ №1:

Пакеты Firebase SDK требуют, чтобы данные изображения были доступны на локальном клиенте, чтобы иметь возможность загружать их в облачное хранилище. Не существует методов, которые используют URL-адрес внешнего изображения данных для загрузки в облачное хранилище.

Если изображение не является локальным для клиента, вам сначала нужно загрузить его на клиент, прежде чем загружать его в облачное хранилище с Firebase SDK.