Body-Parser слишком большой Nodejs
В настоящее время я занимаюсь разработкой API, который должен получать base64 изображения, но когда я пытаюсь передать его в полезную нагрузку и отправить по POST, сервер (который, кстати, сделан с Node, используя express и body-parser в качестве промежуточного программного обеспечения) дает мне следующая ошибка:
request entity too large
После поисков в Интернете я нашел людей, которые говорили, что я должен использовать:
bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({limit: '50mb', extended: true}));
app.use(bodyParser.json({limit: '50mb'}));
цель использования:
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
Тем не менее, при этом я получаю эту ошибку:
Unexpected token i in JSON at position 5
Кто-нибудь знает, что мне здесь не хватает? Заранее спасибо!
Это печать с объектом, который я пытаюсь отправить в качестве примера:
2 ответа
Спасибо всем, кто помог мне в этом вопросе! Для тех, кто сталкивается или столкнется с этим, я смог решить эту проблему, передав объект методу bodyParser.urlencoded и методу BodyParser.json.
Так как они принимают объект в своих методах, мы можем передать ограничение и размер запроса, поэтому я настраиваю свою работу следующим образом:
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({
limit: '5mb',
parameterLimit: 100000,
extended: false
}));
app.use(bodyParser.json({
limit: '5mb'
}));
Вот эта тема, которая также может помочь:
Существует также документация самого BodyParser, доступ к которой можно получить, щелкнув документацию о BodyParser.
Попробуйте поменять местами bodyParser.json и bodyParser.urlencoded.
var bodyParser = require('body-parser');
app.use(bodyParser.json({limit: '50mb'}));
app.use(bodyParser.urlencoded({limit: '50mb', extended: true}))