Я генерирую эскизы изображений с помощью библиотеки sharp
следующим образом:
const filePath128 = path.join(path.dirname(filePath), `${_128_PREFIX}${fileName}`);
const filePath512 = path.join(path.dirname(filePath), `${_512_PREFIX}${fileName}`);
const filePath1024 = path.join(path.dirname(filePath), `${fileName}`);
const uploadStream128 = bucket.file(filePath128).createWriteStream({metadata});
const uploadStream512 = bucket.file(filePath512).createWriteStream({metadata});
const uploadStream1024 = bucket.file(filePath1024).createWriteStream({metadata});
const pipeline128 = sharp();
pipeline128.resize(_128_MAX_WIDTH, _128_MAX_HEIGHT).pipe(uploadStream128);
const pipeline512 = sharp();
pipeline512.resize(_512_MAX_WIDTH, _512_MAX_HEIGHT).pipe(uploadStream512);
const pipeline1024 = sharp();
pipeline1024.resize(_1024_MAX_WIDTH, _1024_MAX_HEIGHT).pipe(uploadStream1024);
bucket.file(filePath).createReadStream().pipe(pipeline128);
bucket.file(filePath).createReadStream().pipe(pipeline512);
bucket.file(filePath).createReadStream().pipe(pipeline1024);
return new Promise((resolve, reject) => {
let finishCount = 0;
const checkFinish = (ee: any) => {
finishCount++;
console.log('finishCount: ', finishCount, ee);
if (finishCount === 3) { resolve(); }
}
uploadStream128.on('finish', checkFinish).on('error', checkFinish);
uploadStream512.on('finish', checkFinish).on('error', checkFinish);
uploadStream1024.on('finish', checkFinish).on('error', checkFinish);
});
Все эскизы изображений создаются без каких-либо проблем. Но токен доступа для них по умолчанию не создавался. В консоли Firebase я даже не могу просматривать сгенерированные файлы изображений. После того, как я сделаю ссылку Create new access token
с консоли, изображение станет доступным для просмотра.
Любая помощь в том, как решить эту ситуацию?
Спасибо.