javascript - 使用 postman 上传图片到 nodejs 后端服务
问题描述
我是 nodejs 的新手,在测试从计算机上传图像的 post 方法期间,我在邮递员中收到这条消息,表明我的上传方法不存在
我的 server.js 代码是
const express = require('express');
const multer = require('multer');
const app = express();
//moddleware
app.use(express.urlencoded({extended: true}));
app.use(multer.json(''));
const PORT = process.env.PORT | 5000;
var Storage = multer.diskStorage({
destination: (req, file, callback) => {
callback(null,"/images");
},
filename: (req, file, callback) => {
callback(null,file.fieldname);
}
});
var upload = multer({
storage: Storage
}).array('image',3);
//route
app.post('/', (req, res) => {});
app.post('/upload', (req, res) => {
upload(req, res , err => {
if (err) {
return res.send('somthing went wrong');
}
return.res.send('file uploaded successfully');
});
});
app.listen(PORT, () => {
console.log('Server running on PORT ${PORT}')
});
这是我的服务器响应
[nodemon] 2.0.7
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,mjs,json
[nodemon] starting `node server.js`
Server running on PORT ${PORT}
谢谢你
解决方案
您的代码在导致问题的上传路由 return.res.send 中有一些错误。进行如下更改。
const express = require('express')
const bodyParser= require('body-parser')
const multer = require('multer');
const app = express();
app.use(bodyParser.urlencoded({extended: true}))
const PORT = process.env.PORT | 5000;
var Storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, 'images')
},
filename: function (req, file, cb) {
cb(null, file.fieldname + '-' + Date.now())
}
})
var upload = multer({ storage: Storage }).array('image', 12)
//route
app.post('/', (req, res) => {});
app.post('/upload', (req, res) => {
upload(req, res , err => {
if (err) {
res.send('somthing went wrong');
}
res.send('file uploaded successfully');
});
});
app.listen(PORT, () => {
console.log('Server running on PORT ${PORT}')
});
推荐阅读
- javascript - 设置为使用 Javascript 通过覆盖设置 div 的背景图像?
- video - 将视频拆分为帧时的额外帧
- microsoft-graph-api - 如何从 Graph API 读取 Delve 联系信息/个人资料
- python-3.x - HackerRank 设计师门垫
- sqlite - 无法加载 DLL - SQLite3
- ocaml - 什么是 PPX?
- javascript - 将 keras 模型加载到 tfjs 会导致输入形状不匹配
- jenkins - 无法获取詹金斯的用户名和密码
- docker - Docker NGINX 反向代理 502 VM 上的错误网关
- python - 如何在Python中的特定行下远程添加一行