相关疑难解决方法(0)

如何使用multer或body-parser上传文件

我是NodeJS初学者,跟随着一本书"使用MongoDB和NodeJS进行Web开发".我被困在第6章"闷闷不乐".当我使用multer进行文件上传时,服务器会抛出以下错误:

/Users/fk / Documents / imageuploader / node_modules / express / lib / application.js: 209
throw new TypeError('app.use() requires middleware functions'); ^

TypeError: app.use() requires middleware functions
Run Code Online (Sandbox Code Playgroud)

但当我用bodyParser替换它时,服务器会启动,但是当我点击上传按钮时,它会在浏览器上给出以下错误.

500 TypeError: Cannot read property 'file' of undefined
Run Code Online (Sandbox Code Playgroud)

但是,它应该将我重定向到另一个页面,其中显示上传的文件.

这是我的bodyParser代码,请查看我是否正确使用它,因为它在服务器启动时给了我"body-parser deprecated".我已经看到过像我这样的其他问题,但我遵循但没有一个真正起作用.

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
  extended: true
}));

app.use(bodyParser({
  uploadDir: path.join(__dirname, '../public/upload/temp')
}));
Run Code Online (Sandbox Code Playgroud)

以下代码显示了我如何使用multer,以防万一我不应该做的事情请告诉我.如果上传文件,正文解析器或者multer,哪一个会更好?

app.use(multer({
  dest: path.join(__dirname, '../public/upload/temp')
}));


var saveImage = function() {
  var possible = 'abcdefghijklmnopqrstuvwxyz0123456789',
    imgUrl = '';

  for (var i = 0; i < 6; i += 1) {
    imgUrl …
Run Code Online (Sandbox Code Playgroud)

javascript node.js express multer body-parser

11
推荐指数
2
解决办法
2万
查看次数

标签 统计

body-parser ×1

express ×1

javascript ×1

multer ×1

node.js ×1