【问题标题】:How do I upload PDF files to the cloud for free from an Express back-end?如何从 Express 后端免费将 PDF 文件上传到云端?
【发布时间】:2021-11-26 19:58:05
【问题描述】:
我正在开发一个图书销售网站。管理员可以上传PDF格式的书籍,用户可以阅读PDF,也可以下载。我正在为这个项目使用 MERN 堆栈。为了上传 pdf 文件,我尝试了 Cloudinary。但它不允许我重定向到secure_url。它需要付费订阅。我的客户不想这样做。
所以请告诉我是否有办法上传 pdf 文件并将它们作为 HTTP URL 获取。所以我可以将 URL 存储在数据库中并在前端显示。
【问题讨论】:
标签:
node.js
express
pdf
file-upload
【解决方案1】:
您需要的是对象存储。最好的例子是 AWS S3、Backblaze B2 等。
存储是一种商品,没有受人尊敬的供应商会免费为您提供。但是,许多确实提供免费层,其中一些存储是免费的,并且任何以便宜的固定速率 / GB 发布
拥有 S3 提供程序后,您可以使用 multer-S3 之类的包上传文件并获取 URL
但是,除了存储费用之外,提供商还会对每个 GET 或 POST 请求收取费用,因此,如果您有很多用户访问文件并经常下载,那么可能值得研究像 Cloudflare 这样的 CDN 从缓存而不是每次都有新的请求。