私は現在、 node.js アプリケーションでbody-parserと一緒にmulterを使用しています。multipart/form-data
POSTMAN を使用してフォームデータをPOSTしようとしましたが、このエラーが発生しています。
Error: invalid json
at parse (/Users/k/Documents/application/node_modules/body-parser/lib/types/json.js:79:15)
at /Users/k/Documents/application/node_modules/body-parser/lib/read.js:102:18
at IncomingMessage.onEnd (/Users/k/Documents/application/node_modules/body-parser/node_modules/raw-body/index.js:136:7)
at IncomingMessage.g (events.js:199:16)
at IncomingMessage.emit (events.js:104:17)
at _stream_readable.js:908:16
at process._tickDomainCallback (node.js:381:11)
これは、server.jsにmulterとbody-parserを追加した方法です
var express = require('express');
var mongoose = require('mongoose');
var bodyParser = require('body-parser');
var multer = require('multer');
var app = express();
app.use(bodyParser.urlencoded({extended: true}));
app.use(bodyParser.json());
app.use(multer({ dest: './uploads/'}));
おそらくmulterが機能していないためだと思います。body-parser を削除して再試行すると、 and の空の json が表示されconsole.log(req.body)
ますconsole.log(req.files)
。
注:body-parser
バージョンは1.12.0で、multer
バージョンは0.1.8です。