【发布时间】:2021-01-13 08:49:13
【问题描述】:
在发布请求中(在 Angular 中),我通常使用“对象”发送数据(例如“产品”数据):
product: any = {}; // filled of proprieties (code, barcode, name, description...)
然后在请求中传递这个:
return this.http
.post<any>( Url , product)
.pipe(catchError(this.errorHandler));
使用 ExpressJS 我可以很容易地检索到 'req.body.>' 的属性:
router.post("/newProduct", function (req, res, next) {
const code = req.body.code;
const barcode = req.body.barcode;
const nameProduct = req.body.name;
const description = req.body.description;
//.. here other code - mySql to insert data in the DB ..
});
问题
现在我想发送相同的数据(如示例中所示)以及要保存在服务器上的图像。
附言
我尝试使用 FormData:
var formData = new FormData();
formData.append('image', imageFile);
formData.append('product', product);
return this.http
.post<any>(this.newProductUrl, formData )
.pipe(catchError(this.errorHandler));
所以在后端,我可以使用 npm 包 'multer' 检索和保存图像,但我不知道如何获取 'product' 数据。
【问题讨论】:
-
如何在 multer 中检索图像?你能发布一些代码吗?
标签: node.js angular express file-upload xmlhttprequest