在快速路由器内使用multer进行文件上传
Use multer for File-Uploads inside a Express Router
我用node.js和Express构建了一个可工作的REST-API。
现在我需要一个文件上传端点,它接受上传的文件并对其进行处理。
我正在使用快速路由器和一些身份验证中间件。
server.js(摘录)
var router = express.Router()
app.use("/api", router)
[...]
router.use(function(req, res, next) {
//Authentification middleware
[...]
next()
})
router.route("/upload")
.post(function(req, res){
//upload logic
})
我如何使用multer将上传的文件作为req.file(或左右)提供,但只能在/api/upload中提供,并用于身份验证用户?
好的,我明白了。
我可以使用
var multer = require("multer")
var upload = multer({ dest: "some/path" })
[...]
router.route("/upload")
/* replace foo-bar with your form field-name */
.post(upload.single("foo-bar"), function(req, res){
[...]
})
对我来说,它也起到了作用。
var multer = require("multer")
var upload = multer({ dest: "path" })
router.post("/upload", upload.single("foo-bar"), function(req, res) {
...
}
在我的案例中,我尝试了所有的东西,但都不起作用,但我找到了解决方案
app.js
const multer = require('multer');
const storage = {
dest: 'UPLOAD/PATH/'
}
const upload = multer(storage);
app.post('/myupload', upload.single('FILE_NAME'), (req,res)=>{
res.send('Upload');
});
我试过很多次使用express.Router(),但它不起作用,这就是为什么我在app.js中编写代码并重定向到另一个文件。
相关文章:
- NodeJS expressJS使用multer和passport将文件上传并保存到MongoDB
- Express.js和multer:如何知道文件何时全部上传
- 在multer中重命名上载的文件
- 使用 multer 上传文件,错误:意外字段
- 使用 multer (nodeJs) 上传文件不起作用
- 上传文件并使用 multer 传递附加参数
- Express Multer 文件上传 req.body 和 req.file 未定义
- 节点.js连接在使用 multer 上传文件时重置
- 如何在 Node.js 中使用 multer 将文件保存在项目文件夹中
- 单独文件中的Express中间件(multer)
- 使用multer上载多个文件失败
- Multer 使用数据创建新文件夹
- 当我在onFileUploadStart()-NodeJs中包含逻辑时,Multer没有上传文件
- 在Mongoose中使用Multer将文件存储到MongoDB中
- 在快速路由器内使用multer进行文件上传
- Multer上传文件+JSON对象
- 正在上载带有FormData和multer的文件
- Multer只将req.files中的一个文件写入数据库
- 使用multer上传文件不能完全工作(NodeJS)
- 无法运行node.js服务器在节点中使用express和multer上传文件