一个门户网站,我把网页的静态资源放在MonggoDB中,通过后端返给前端,但是文件中包含大数据,base64不适用,然后想通过生成URL的方式,但是不知道如何生成?
2条回答 默认 最新
关注 仅供参考:
您可以使用MongoDB的GridFS来存储大文件,然后在生成URL时,可以使用GridFS提供的下载链接。以下是大致的实现步骤:1.使用GridFS将大文件存储到MongoDB中,您可以参考MongoDB官方文档来实现。
2.在后端生成一个可下载的URL,具体步骤如下:
- 获取该文件的ID,您可以在存储时获取该ID。
- 使用GridFS提供的download_by_name()或download_by_id()函数来获取文件内容。
- 生成一个随机的、带有有效期限的token,并将该token与文件ID保存到一个Map中。
- 将生成的token返回给前端,前端可以使用该token来下载文件。
3.在前端通过该URL来下载文件,具体步骤如下:
- 向后端发送一个请求,携带token。
- 后端根据token从Map中获取文件ID,并使用GridFS提供的download_by_name()或download_by_id()函数来获取文件内容,并返回给前端。
需要注意的是,生成的token应该有一定的有效期限,避免被滥用。同时,生成的token也需要保证一定的随机性,避免被恶意猜测。
解决 无用评论 打赏 举报
悬赏问题
- ¥30 python密码表示
- ¥15 Flask应用部署到阿里云服务器失败,无法访问网页,问题出在哪里?
- ¥15 计算个体的IBS遗传距离
- ¥15 有什么好的直流步进减速电机42的厂家推荐,保持力矩达到0.3N.M
- ¥15 一道蓝桥杯的题,请问我错在哪里
- ¥15 关于#android问题,xposed模块找不到so
- ¥15 UE5.4.2创建C++项目成功,但是编译失败
- ¥15 华为手机备份nas,airdisk,遇到的空间不足问题。求个详细的解决方案。
- ¥20 Cknife无法使用
- ¥15 这个结构体为什么会出错呢?