私は数日間、Multerを使用して画像をアップロードしようとしていました。これは私がどれくらい得るかです。私は複数のことを試みましたが、それを機能させるように見えません。 Multerを使用してcreateUser関数内の画像を以下の形式でアップロードする方法はわかりません。NodejsとExpressでの画像のアップロード
私の 'server.js' ファイル:
var express = require('express');
var multer = require('multer');
var upload = multer({dest: 'uploads/'});
var router = require('./app/routes');
var bodyParser = require('body-parser');
var mongoose = require('mongoose');
var session = require('client-sessions');
var DB_URI = "mongodb://localhost:27017/portfolio";
var app = express();
var path = require('path');
var fs = require('fs');
app.set('view engine', 'ejs');
app.use(bodyParser.urlencoded({extended:false}));
app.use(express.static(__dirname+ '/public'));
app.use(session({
cookieName: 'session',
secret: 'random_string_goes_here',
duration: 30 * 60 * 1000,
activeDuration: 5 * 60 * 1000,
}));
mongoose.connect(DB_URI);
app.use(router);
app.listen(8080, function(){
console.log("server is listening on port 8080");
})
私の 'routes.js'
var express = require('express');
var router = express.Router();
var projectController = require('./controllers/projectController');
var userController = require('./controllers/userController');
router.post('/regUser', userController.createUser);
私の 'index.ejs'
<form class="form inv" method="POST" action="/regUser" id="reg_form">
<h3 style="margin-bottom:40px;">Register</h3>
<!-- <input type="file" name="file"/> -->
<input type="text" class="form-control" name="name" placeholder="Name"/>
<input type="text" class="form-control" name="username" placeholder="Username"/>
<input type="text" class="form-control" name="email" placeholder="Email"/>
<input type="password" class="form-control" name="password" placeholder="Password"/>
<input type="file" name="userPhoto"/>
<input type="submit" class="btn btn-default" value="Submit"/>
</form>
マイuserController.js
createUser: function(req, res){
//add code to create user AND upload image
}
あなたが取得しているかのエラーそこ? – Deep