ライブラリーのインストール
sudo npm install -g multer
app.js
//-------------------------------------------------------------------------
// app.js
//
// Apr/11/2021
//-------------------------------------------------------------------------
const express = require('express')
const fs = require('fs')
var cfenv = require('cfenv')
const multer = require('multer')
const app = express()
const storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, './data_work')
},
filename: function (req, file, cb) {
cb(null, file.originalname)
}
})
const upload = multer({ storage: storage })
app.post('/upload', upload.single('file'), (req, res) => {
const filename = req.file.originalname
const file = req.file
console.log(file)
const content = fs.readFileSync(req.file.path, 'utf-8')
res.send(filename + ': uploaded ***\n')
})
var appEnv = cfenv.getAppEnv()
app.listen(appEnv.port, '0.0.0.0', function() {
console.log("server starting on " + appEnv.url)
})
//-------------------------------------------------------------------------
サーバーの起動
$ export NODE_PATH=/usr/lib/node_modules
$ node app.js
server starting on http://localhost:3000
テストスクリプト
p01.jpg が data_work にアップロードされます。
curl http://localhost:3000/upload -F 'file=@p01.jpg'
HTTPie を使ったテストスクリプト
http -f POST http://localhost:3000/upload file@p01.jpg