Я храню несколько путей Firebase Storage для изображений / видео во внутренней БД, и мобильный клиент использует их для извлечения URL-адресов загрузки по мере необходимости для моих просмотров:
import {firebase} from '@react-native-firebase/storage';
// e.g. 'images/stars.jpg'
const getDownloadUrlForFilePath = (filePath: string | null): Promise<string> => {
if (filePath === null) {
throw 'Path is null!';
}
return getDownloadUrlForRef(firebase.storage().ref(filePath));
};
const getDownloadUrlForRef = (ref): Promise<string> => {
return ref.getDownloadURL();
};
Проблема в том, что я нужно одно и то же изображение во многих местах. Поэтому я часто звоню getDownloadURL()
, чтобы получить тот же URL-адрес для загрузки. Это приводит к тому, что трубка отправляет несколько http-запросов на один и тот же ресурс, как это происходит при отладке сетевого трафика c.
Я не храню полученные URL-адреса для загрузки в мобильном клиенте где-либо в моей текущей реализации.
Я хотел бы найти способ, чтобы приложение получало URL-адрес для загрузки только один раз для одного и того же путь и кеш его. Поддерживается ли это Firebase SDK?