Controller.js
var multer = require('multer');
var upload = (req, res) => {
var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, './uploads/');
},
filename: function (req, file, cb) {
var dateTimestamp = Date.now();
cb(null, file.originalname.split('.')[file.originalname.split('.').length - 2] + '-' + dateTimestamp + '.' + file.originalname.split('.')[file.originalname.split('.').length - 1]);
}
});
var upload = multer({
storage: storage
}).single('file');
upload(req, res, function (err) {
console.log(req.file);
if(err) {
res.json({ error_code: 1, err_desc: err });
return;
}
res.json("File uploaded sucessfully");
});
};
module.exports ={
upload:upload
}
app.js
var mongoose = require("mongoose");
var multipart = require('connect-multiparty');
app.use(cors({origin:true, credentials:true}));
app.use(bodyParser.json({limit: '50mb'}));
app.use(bodyParser.urlencoded({limit: '50mb',extended: true}));
app.use(multipart({}));
mongoose.Promise = global.Promise;
mongoose.connect("mongodb://127.0.0.1:27017/mydb");
var UploadRouter =require('./upload/uploadRouter/upload-doc-router');
app.use('/upload', UploadRouter);
var PORT = process.env.PORT || 4000;
app.listen(PORT, function(){
console.log('Running on Port 4000...');
});
router:
var express =require("express");
var URouter = express.Router();
var Upload = require('../uploadControllers/upload-doc-controllers');
URouter.route('/single/file').post(Upload.upload);
module.exports =URouter;
以上是我的代码。我想上传pdf,word文档并存储在一个文件夹中。当我测试api时遇到语法错误意外令牌-在JSON位置0处,JSON.parse(
答案 0 :(得分:0)
我删除了标头,并在正文部分选择了表单数据