如何使用 Node.js 从 Supabase 存储中保存文件(将 blob 转换为文件)
How to save a file from Supabase Storage using Node.js (converting blob to file)
我正在使用 from.download()
在 NodeJS 中从 Supabase 存储下载媒体文件(主要是图像)。
如何将作为文件返回的 Blob 保存在我的本地硬盘上?
从 Blob 创建缓冲区并将其保存在您的硬盘上。
一个工作示例:
(注意:如果您不使用 NodeJS ESM 模块,则必须使用 require
而不是 import
)
import fs from 'fs'
import { createClient } from '@supabase/supabase-js';
const supabase = createClient(yourSupaseUrl, yourSupabaseKey)
const fileName = 'some-file.png'
const filePath = 'some-folder/' + fileName
const { data, error } = await supabase.storage
.from('storage-name')
.download(filePath)
const blob = data;
const buffer = Buffer.from( await blob.arrayBuffer() );
await fs.promises.writeFile(fileName, buffer);
对我有帮助的链接:
- Save video blob to filesystem electron/node js
中的 Whosebug 答案
- 关于 from.download()
的 Supabase 文档
我正在使用 from.download()
在 NodeJS 中从 Supabase 存储下载媒体文件(主要是图像)。
如何将作为文件返回的 Blob 保存在我的本地硬盘上?
从 Blob 创建缓冲区并将其保存在您的硬盘上。
一个工作示例:
(注意:如果您不使用 NodeJS ESM 模块,则必须使用 require
而不是 import
)
import fs from 'fs'
import { createClient } from '@supabase/supabase-js';
const supabase = createClient(yourSupaseUrl, yourSupabaseKey)
const fileName = 'some-file.png'
const filePath = 'some-folder/' + fileName
const { data, error } = await supabase.storage
.from('storage-name')
.download(filePath)
const blob = data;
const buffer = Buffer.from( await blob.arrayBuffer() );
await fs.promises.writeFile(fileName, buffer);
对我有帮助的链接:
- Save video blob to filesystem electron/node js 中的 Whosebug 答案
- 关于 from.download() 的 Supabase 文档