我試圖將圖片上傳到我的node.js服務器上,當我什么都不上傳,只是發送沒有圖片的發布請求時,它作業得很好,但每當我試圖發布圖片時,node.js在控制臺中顯示錯誤
這里有一個鏈接,是關于發布圖片的。
這里是帖子的鏈接 "http://localhost:3001/databaseGym/logo" 這是我的代碼,用于處理對該鏈接的發布操作
Router.post('/logo' /span>, upload. single('file'), (req, res) =>/span> {
console.log(" working")。
//res.json({ file: req.file });
res.send("done") 。
});
這是我在upload.single()中上傳的代碼
。//創建存盤引擎。
const storage = new GridFsStorage( {
url: url,
file: (req, file) => {
return new Promise((resolve, reject) => {
crypto.randomBytes(16, (err, buf) =>/span> {
if (err) {
return reject(err)。
}
const filename = buf.toString('hex') path. extname(file.originalname)。
const fileInfo = {
filename: 檔案名。
bucketName: 'logo'。
};
resolve(fileInfo)。
});
});
}
});
const upload = multer({ storage });
這里是錯誤資訊
MulterError。Unexpected欄位
在 wrappedFileFilter (D:web devgym websiteserver_gym
ode_modulesmulterindex.js:40:19)
在Busboy.<anonymous>(D:web devgym websiteserver_gym
ode_modulesmulterlibmake-middleware.js:114:7)
在Busboy。 emit (node: events: 394: 28)
在Busboy.emit(D:web devgym websiteserver_gym
ode_modulesusboylibmain.js:38:33)
在PartStream.<anonymous>(D:web devgym websiteserver_gym
ode_modulesusboylib ypesmultipart.js:213:13)
在PartStream。 emit (node: events: 394:28)
在HeaderParser.<anonymous>(D:web devgym websiteserver_gym
ode_modulesdicerlibDicer.js:51:16)
在HeaderParser。 emit (node:events:394:28)
在HeaderParser._finish(D:web devgym websiteserver_gym
ode_modulesdicerlibHeaderParser.js:68:8)
在SBMH.<anonymous> (D:web devgym websiteserver_gym
ode_modulesdicerlibHeaderParser.js:40:12)
uj5u.com熱心網友回復:
你應該把Postman中的引數從image改為file,因為你在POST端點中指定了屬性名:
// you specify the `file` as the fieldname.
Router.post('/logo'/span>, upload. single('file'), (req, res) =>/span> {
console.log(" working")。
//res.json({ file: req.file });
res.send("done") 。
});
從檔案中:
.single(fieldname):接受一個名稱為
fieldname的單一檔案。該單個檔案將被存盤在req.file中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/332238.html
標籤:

