Неожиданный токен - в JSON на позиции 0
Я хочу загрузить изображение в AWS s3 и отправить его на свой бэкэнд, используя node js с multer и multer-s3, но я получил эту ошибку, в этом случае я использую angular 11 в моем интерфейсе. вы можете помочь мне исправить эту ошибку, пожалуйста?
промежуточное ПО, использующее multer ``const multer = require("multer");const aws = require('aws-sdk');const multers3 = require('multer-s3');const db = require("./ src / models");const fileUpload = require('экспресс-загрузка файла');const ImageProductBoffice = db.imageProductBoffice;
require("dotenv").config();
const {
AWS_ID,
AWS_SECRET,
AWS_BUCKET_PDF
} = process.env;
const s3 = new aws.S3({accessKeyId: AWS_ID, secretAccessKey: AWS_SECRET, Bucket: AWS_BUCKET_PDF});
const upload = multer({
storage: multers3({
s3: s3,
bucket: AWS_BUCKET_PDF,
metadata: function (req, file, cb) {
cb(null, {fieldName: file.fieldname});
},
key: function (req, file, cb) {
cb(null, "dev-img-testing/"+ Date.now() + file.originalname);
}
}),
limits: { fileSize: 1000000 }
});```
маршрутизатор
const noItem = req.body.noItem;
const primary = req.body.primary;
if( req.file === undefined ){
return res.status(400).send({
success: false,
message: 'Error: No File Selected'
})
} else {
// If Success
const imageName = req.file.key;
const imageLocation = req.file.location;// Save the file name into database into profile modelres.json( {
let dataImage = {
itemNo: noItem,
pathImage: imageLocation,
nameImage: imageName,
primary: primary
}
ImageProductBoffice.create(dataImage)
.then((data) => {
// res.send(data);
return res.status(200).send({
success: true,
view:data,
});
})
.catch((err) => {
res.status(500).send({
message: "Something is wrong" + err.message,
success: false
});
});
}
}); ```
frontend html
```<form class="search-form" [formGroup]= "uploadForm">
<div class="form-group">
<input class="choose-file subtitle-1" name="image" (change)="fileChangeEvent($event)"
accept="image/*" type="file" autocomplete="off" maxlength="100" placeholder="Upload
Image">
</div>
</form> ```
frontend ts angular
```fileChangeEvent(event: any) {
// this.imageChangedEvent = event;
this.image.upload = event.target.files[0];
}
const formUpload = new FormData();
formUpload.append("image", this.image.upload);
formUpload.append("noItem", noItem);
formUpload.append("primary", primary);
const data = await this.rest.upload_image_product(formUpload)
if (data['success']) {
console.log(data);
} else {
console.log('gagal');
}