локально работает отлично.
Это основная точка входа в app.j.
Кто-нибудь знает, как это адаптировать, чтобы это могло быть точкой входа для лямбда-функции, пожалуйста ?
Я перепробовал все, что мог придумать.
const { getMrz } = require('./mrz-detection');
const { Image } = require('image-js');
const bodyParser = require('body-parser');
const cors = require('cors');
const fs = require('fs');
const path = require('path');
const express = require('express')
const app = express()
const port = 3000
app.use(cors());
app.use(bodyParser.json({limit: '10mb', extended: true}));
app.post('/', function(req, res) {
exec().catch(console.error);
async function exec() {
let buffer = new Buffer(req.body.data, 'base64');
let pathname = path.resolve('/tmp/machine_readable_zone.png');
fs.writeFileSync(pathname, buffer);
let result = {};
try {
await getMrz(await Image.load(pathname), {
debug: true,
out: result
});
} catch (e) {
console.error(e);
}
await sendImage(
pathname,
result.crop
);
}
async function sendImage(pathname, image) {
await image.save(pathname);
res.sendFile(path.resolve(pathname));
}
})
app.listen(port, () => console.log(`Mrz detection app listening at http://localhost:${port}`))```