node.js - 如何从 Google Cloud Functions NodeJS 连接到 Google Cloud Storage
问题描述
我有以下代码示例,它接收 bufferedImage 及其 mimeType,然后将其上传到 Google Cloud Storage。
一切正常,但由于某种原因,我的 Google Cloud Function 从 Storage API 收到 403 错误。
我必须做什么才能让我的 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()
})
);
})
}
这是我得到的错误
{"code":403,"errors":[{"domain":"global","reason":"forbidden","message":"directed-galaxy-221521@appspot.gserviceaccount.com 没有存储空间。 objects.create 访问 blog/e33f9c9d-65f0-4a7f-8332-29846f770e6d."}],"message":"directed-galaxy-221521@appspot.gserviceaccount.com 没有 storage.objects.create 访问 blog/e33f9c9d -65f0-4a7f-8332-29846f770e6d。”}
解决方案
推荐阅读
- python - 如何从 python seaborn displot 获取可能性分布函数
- r - 使用rentrez和shiny下载蛋白质序列
- npm - npm 下载多个版本的包
- laravel - 在 laravel 5.7 的验证电子邮件中更改邮件验证链接中的自定义参数的“VerifyEmail”类,用于方法 verifyUrl()
- xml - Intellij Android - 白色区域出现在活动的底部
- mysql - 使用连接从mysql中的多个表中获取数据以错误的数据结尾
- r - 从数据集中读取项目
- java - 如何在 Java 中禁用抛出异常或 fillInStackTrace()
- java - spring-cloud-config:配置文件无法正常工作
- django - 如何使用 autocomplete_fields 为外键添加自动完成