multerを使用してノードjs内のファイルをアップロードする方法についてのチュートリアルに続き、ノードjを学習し始めたばかりで、jsもあまりにも早く始まっていないので、私はかなり初心者です。チュートリアルの結果、index.ejsでsubmitをクリックして画像/音楽ファイルをアップロードすると、そのファイルが詳細と共にアップロードされていることと、./public/uploadsを確認すると端末に表示されますフォルダには、ファイルもそこに置かれています。multerファイル(nodejs)をMongoデータベースにアップロード
ここで私が知りたいのは、そのデータを取得してmongoデータベースに保存する方法と、これらの画像を表示したり、これらの音楽ファイルをindex.ejsで再生するにはどうすればいいですか?私はまだマングースを設定していないが、私はなるだろう。これまでの私のコード:
マイapp.js何をしようとする
var express = require('express'); //to require express.js
var multer = require('multer'), //to require multer for uploading photos
bodyParser = require('body-parser'), //to require body-parser to grab json form data
path = require('path');
var upload = multer({ dest: 'public/uploads/' }) //giving upload a destination directory
var app = express(); //to use express
app.use(bodyParser.json());
app.set('views', path.join(__dirname, 'views'));
app.use(express.static(__dirname + '/public')); //to use style.css
app.set('view engine', 'ejs'); //to use ejs as template language
// app.use(bodyParser.urlencoded({ extended: false })); //to use body parser
app.get('/', function(req, res){ //using express for routing and printing out content
res.render('index'); //render it in html. In ejs, display what we want to display
})
app.post('/', multer({ dest: './public/uploads/'}).single('upl'), function(req,res){
console.log(req.body); //form fields
console.log(req.file); //form files
res.status(204).end();
});
app.listen(3000,function(){ //using express to load the server
console.log('Pulse on port 3000!');
})
Index.ejs
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Pulse</title>
</head>
<body>
<h1> Hi </h1>
<form action="/" enctype="multipart/form-data" method="post">
<input type="text" name="title">
<input type="file" name="upload">
<input type="submit" value="Upload">
</form>
</body>
</html>