SuperAPI AI 工具集

vercel-blob

部署与运维

查看项目

更新于 10-16 00:20

技能介绍

用途:Vercel Blob 为 Next.js 应用提供对象存储与 CDN,适合文件上传(图片、PDF、视频)、预签名 URL、用户生成内容与文件管理。

主要能力:通过 @vercel/blob 的 put、del、list 完成上传、删除与分页列举;支持公开(access: 'public',走 CDN 缓存)与私有文件;客户端上传用 upload 与 handleUpload 生成上传令牌;超过 500MB 用 createMultipartUpload、uploadPart 分片上传。

使用方式:在 Vercel 控制台 Storage 创建 Blob,执行 vercel env pull .env.local 生成 BLOB_READ_WRITE_TOKEN;安装 bun add @vercel/blob;服务端用 put(file.name, file, { access: 'public', contentType: file.type }) 上传,del(blob.url) 删除,list({ prefix, limit }) 分页列举。客户端上传需服务端 handleUpload 配置 allowedContentTypes、maximumSizeInBytes 与 onUploadCompleted,客户端调用 upload(file.name, file, { access: 'public', handleUploadUrl: '/api/upload' })。

适用场景:头像上传、受保护文档、图片画廊、大文件客户端上传、批量操作、上传前用 sharp 优化图片。

限制与注意:切勿把 BLOB_READ_WRITE_TOKEN 暴露到客户端;显式设置 contentType;公开文件才走 CDN;上传前校验类型与大小;用时间戳或 addRandomSuffix 避免重名;list 最多返回 1000 条需用 cursor 分页;删除需用 put 返回的精确 URL;替换文件时删除旧文件;敏感数据应先加密。免费额度为每月 100GB 带宽、单文件最大 500MB。

官方文档:https://vercel.com/docs/storage/vercel-blob;SDK:https://vercel.com/docs/storage/vercel-blob/using-blob-sdk;GitHub:https://github.com/vercel/storage。