Мне нужно получить URL всех файлов в пути 'bucket /load /: loadID'. Я могу получить эти файлы в массиве, называемом «файлы». Затем я фильтрую его (получаю массив endFiles). И теперь мне просто нужен новый массив с именем url, чтобы pu sh всех URL-адресов в (getSignedUrl). Но я не знаю, как это сделать. Мне нужно получить подписанные URL-адреса внутри al oop (endFiles.forEach) и pu sh в массив URL-адресов или что-то в этом роде.
exports.testCloudFunc = functions.storage.object().onFinalize(async object => {
const filePath = object.name;
const { Logging } = require('@google-cloud/logging');
console.log(`Logged: FILEPATH: ${filePath}`);
const id = filePath.split('/');
console.log(`Logged: ID: ${id[0]}/${id[1]}`);
const bucket = object.bucket;
console.log(`Logged: BUCKET: ${object.bucket}`);
async function listFilesByPrefix() {
const options = {
prefix: id[0] + '/' + id[1]
};
const [files] = await storage.bucket(bucket).getFiles(options);
const endFiles = files.filter(el => {
return (
el.name === id[0] + '/' + id[1] + '/' + 'invoiceReport.pdf' ||
el.name === id[0] + '/' + id[1] + '/' + 'POD.pdf' ||
el.name === id[0] + '/' + id[1] + '/' + 'rateConfirmation.pdf'
);
});
for (let i = 0; i < endFiles.length; i++) {
console.log(endFiles[i].name);
}
}
listFilesByPrefix().catch(console.error);
});
Я застрял и мне нужна помощь. Любая помощь высоко ценится.