我们可以使用NodeJs中的任何fs方法从服务器路径读取文件吗

时间:2019-05-22 06:35:23

标签: node.js google-cloud-storage

就我而言,我需要从云存储/存储桶中读取文件/icon.png,这是一个基于令牌的URL /路径。令牌位于请求的标头中。

我尝试使用fs.readFile('serverpath'),但它返回了错误信息“ ENOENT”,即“不存在此类文件或目录”,但该路径上存在文件。这些方法是否有资格进行调用并从服务器读取文件,或者它们仅适用于静态路径,如果可以,那么在我的情况下,如何从云存储桶/服务器读取文件。

在这里,我需要将该文件路径传递给UI,以显示此图标。

2 个答案:

答案 0 :(得分:1)

使用此库来处理GCS操作。 https://www.npmjs.com/package/@google-cloud/storage

如果确实需要使用fs,请安装https://cloud.google.com/storage/docs/gcs-fuse,将存储桶安装到本地文件系统,然后像往常一样使用fs

答案 1 :(得分:1)

我想补充一下Cloud Ace的回答,说如果您具有存储对象管理权限,则可以公开图像的URL并像使用其他public URL一样使用它。

如果您不想公开URL,则可以通过创建signed URL来临时访问该文件。

否则,您将不得不使用download the file GCS Node.js Client

我将其发布为答案,因为要发表评论已经很久了。