在 Node.js 中将文件上传到 Google Cloud Storage

Google Cloud 是 Google 的 AWS 替代品。 在大多数情况下,您可以在 Google Cloud 中的 AWS 上做任何事情,反之亦然。 例如,本文将展示如何将文件上传到 Google Cloud Storage 类似于 AWS S3

设置

@google-cloud/storage npm 模块 是 Google 官方支持的用于将文件上传到 Google Cloud 的 npm 模块。 您需要做的第一件事是 获取 Google 服务帐户密钥 ,其中包含您需要向 Google Cloud 进行身份验证的凭据。

要获取此文件,您应该 创建一个 Google Cloud 服务帐户 并为其授予 存储管理员 权限。 然后为服务帐户创建一个密钥并下载它。

图片[1]-在 Node.js 中将文件上传到 Google Cloud Storage-技术鸭(jishuya.cn)

使用 Node.js 上传文件

接下来,让我们使用 @google-cloud/storage npm 模块上传文件。 npm 模块很容易使用 – 困难的部分是获取凭据。

要上传文件,您只需使用 .upload() 功能。 您还需要使用 makePublic() 功能:

const { Storage } = require(@google-cloud/storage);

const storage = new Storage({ keyFilename: ./google-cloud-key.json });
// Replace with your bucket name and filename.
const bucketname = vkarpov15-test1;
const filename = package.json;

const res = await storage.bucket(bucketname).upload(./ + filename);
// `mediaLink` is the URL for the raw contents of the file.
const url = res[0].metadata.mediaLink;

// Need to make the file public before you can access it.
await storage.bucket(bucketname).file(filename).makePublic();

// Make a request to the uploaded URL.
const axios = require(axios);
const pkg = await axios.get(url).then(res => res.data);
pkg.name; // masteringjs.io
© 版权声明
THE END
喜欢就支持一下吧
点赞33 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容