#node.js #react-native
Вопрос:
выглядывает
Текущий сценарий выглядит так, как будто я использую функцию распознавания AWS, которая является ssearchFaceByImage, и во время регистрации, когда пользователь загружает изображение, я создаю индексные лица для пользователя, и когда кто-то нажимает изображение, оно будет искать лица в коллекции, но для этого мне нужна строка base64, и когда я использую для этого мультер, я получил
обнаружена ошибка проверки: Значение «java.nio.HeapByteBuffer[pos=0 lim=7889944 cap=7889944]» в «image.bytes» не удовлетворяет ограничению: Элемент должен иметь длину меньше или равную 5242880
MY CODE
var storage = multer.memoryStorage();
var upload_image = multer({
storage: storage,
limits: { fileSize: 20 * 1024 * 1024 },
});
getFace: (req, res) => {
console.log("status", req.files);
var img = req.files[0].buffer.toString("base64");
console.log(img);
// console.log(Buffer.byteLength(buf)); //under 5mbytes
// console.log(Buffer.isBuffer(buf)); //true
//get the user input image and stored in buffer
// console.log(Buffer.from(req.files[0].buffer).toString("base64"));
// var img = Buffer.from(req.files[0].buffer).toString("base64");
// console.log(img);
// // console.log("face", req.files);
// console.log(new Uint8Array.from(Buffer.from(req.files[0].buffer)));
var params = {
Attributes: ["DEFAULT"],
Image: {
Bytes: img,
},
};
var Rekognition = new AWS.Rekognition({ apiVersion: "2016-06-27" });
Rekognition.detectFaces(params, (err, data) => {
if (err) {
console.log("err", err);
if (err.statusCode == 400) {
console.log("Image not exist in Database");
}
} else {
console.log(JSON.stringify(data, null, "t"));
}
});
},
My front END CODE
const file = {
uri:
Platform.OS === "ios"
? capturedImage.uri.replace("file://", "")
: image,
type: "image/jpeg",
name: capturedImage.uri.substr(capturedImage.uri.lastIndexOf("/") 1),
};
const formData = new FormData();
formData.append("photo", file);
// console.log("form", form);
fetch("http://myIp:3000/api/user/detect-face", {
method: "POST",
headers: {
Accept: "application/json",
"Content-Type": "multipart/form-data",
},
body: formData,
})
.then((res) => res.json())
.then((data) => {
console.log(data);
})
.catch((err) => {
console.log(err);
});