将图像发送到服务器Node.js

时间:2020-01-21 01:36:39

标签: node.js android-studio retrofit multer

我想将图像从应用程序传递到服务器。但是,当我打开图片文件夹时,没有找到图片。我认为该图像能够发送到服务器,但无法将其存储到图片文件夹。我希望你们能帮助我解决这个问题。预先谢谢你

项目结构

|
|-db
|-node_modules
|-app.js
|-picture
|-routes
    |-perkhidmatan_rumput
        |-rumput.js

rumput.js

var router = require('express').Router();
var multer  = require('multer');
var upload = multer({ storage: storage })


var storage = multer.diskStorage({
     destination: function (req, file, cb) {
       cb(null,'../../picture')
     },
     filename: function (req, file, cb) {
       cb(null, file.fieldname + '-' + Date.now())
     }
   })


router.post('/api/PostPemantauanPerkhidmatanPotingRumput/:zon/:syarikat/:alamat_syarikat/'+
          ':nama_penyelia/:taman/:bulan/:tahun/:masa/:timeAMPM/:pusingan/:status/:catatan/:state/'+
          ':entryOperator', upload.single('image'),(req,res,next) =>{
          console.log(req.file)


})

enter image description here

2 个答案:

答案 0 :(得分:0)

目的地:

   cb(null,'../../../picture')

,文件名将是:

let path = require('path');

cb(null, file.fieldname + '-' + Date.now()+path.extname(file.originalname))

答案 1 :(得分:0)

能够解决问题。

var router = require('express').Router();
var multer  = require('multer');
var storage = multer.diskStorage({
     destination: function (req, file, cb) {
       cb(null,'picture/')
     },
     filename: function (req, file, cb) {
       cb(null, file.originalname)
     }
   })
var upload = multer({ storage })