Nodejs实现图片上传,链接保存到Mongodb数据库

举报
拿我格子衫来 发表于 2022/03/17 22:42:06 2022/03/17
【摘要】 需求: 客户端批量上传图片到服务器,服务器返回图片链接 用到的主要工具及node库有 multer  mongoose 代码如下 var router = require('express').Router()var projectInfo = require('../projectInfo.json')var mult...

需求: 客户端批量上传图片到服务器,服务器返回图片链接

用到的主要工具及node库有 multer  mongoose

代码如下


  
  1. var router = require('express').Router()
  2. var projectInfo = require('../projectInfo.json')
  3. var multer = require('multer')
  4. let PictureStore = require(PROXY).pictureStore
  5. var storage = multer.diskStorage({
  6. destination: function (req, file, cb) {
  7. cb(null, './public/upload')
  8. },
  9. filename: function (req, file, cb) {
  10. var str = file.originalname.split('.')
  11. cb(null, Date.now() + '.' + str[1])
  12. }
  13. })
  14. var upload = multer({storage: storage})
  15. // 上传图片到图片仓库并返回上传的图片路径
  16. router.post('/uploadImgs', upload.array('file', 20), function (req, res, next) {
  17. var arr = []
  18. for (var i in req.files) {
  19. arr.push(global.SERVICEADDRESS + '' + req.files[i].filename)
  20. }
  21. if (req.body.storeId) {
  22. PictureStore.updateOnePictureStore({_id: req.body.storeId}, {$addToSet: {pictureUrlArr: {$each: arr}}}, (err, data) => {
  23. res.json({
  24. code: 200,
  25. data: arr
  26. })
  27. })
  28. } else {
  29. PictureStore.updateOnePictureStore({isCommon: true}, {$addToSet: {pictureUrlArr: {$each: arr}}}, (err, data) => {
  30. res.json({
  31. code: 200,
  32. data: arr
  33. })
  34. })
  35. }
  36. })

上传图片到服务器的public/upload文件夹下

更新图片链接到图片库, 主要是用了 

{$addToSet: {pictureUrlArr: {$each: arr}}}  批量插入一个数组


 

谢谢阅读.如果觉得对你有帮助请记得点赞或收藏.欢迎留言讨论.你的支持是我出产优秀博客的动力.

文章来源: fizzz.blog.csdn.net,作者:拿我格子衫来,版权归原作者所有,如需转载,请联系作者。

原文链接:fizzz.blog.csdn.net/article/details/82527771

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。