У меня есть следующий пример кода, который получает bufferedImage вместе с его mimeType, а затем загружает его в Google Cloud Storage.
Все работает нормально, но по какой-то причине моя функция Google Cloud получает ошибку 403 отAPI хранилища.
Что мне нужно сделать, чтобы моя функция GC имела доступ к хранилищу GC?
Я не смог найти в документации ничего, что показывало бы мне, как это сделать.
const { Storage } = require('@google-cloud/storage');
// Creates a client
const storage = new Storage();
// Lists all buckets in the current project
const buckets = storage.getBuckets();
exports.uploadImage = (bucketName, fileName, imageBuffer, mimeType) => {
return new Promise((resolve, reject) => {
let bucket = storage.bucket(bucketName);
let file = bucket.file(fileName);
file.save(imageBuffer,
{
metadata: { contentType: `image/${mimeType}` },
},
((error) => {
error ? reject(error) : resolve()
})
);
})
}
вот ошибка, которую я получаю
{"код": 403, "ошибки": [{"домен": "глобальный", "причина"":" запрещено "," сообщение ":" dire-galaxy-221521@appspot.gserviceaccount.com не имеет storage.objects.create доступ к blog / e33f9c9d-65f0-4a7f-8332-29846f770e6d. "}]," message":" dire-galaxy-221521@appspot.gserviceaccount.com не имеет storage.objects.create для доступа к блогу / e33f9c9d-65f0-4a7f-8332-29846f770e6d. "}