语法错误:意外的令牌-在位置0的JSON中,而在邮递员中上传pdf文件

时间:2018-08-25 07:33:02

标签: node.js multer-s3

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(),createStrictSyntaxError像这样显示邮递员中的错误。当我选择pdf文件,然后将请求发送到api。

1 个答案:

答案 0 :(得分:0)

我删除了标头,并在正文部分选择了表单数据