Articles of 身体分析器

Body-Parser太大Nodejs

我目前正在开发一个应该接收一个图像的base64的API,但是当我尝试通过POST传递这个有效负载并发送时,服务器(通过使用expression式和身体分析器作为中间件,由Node构成)给出我有以下错误: request entity too large 在网上search了很多之后,我发现有人说我应该使用: bodyParser = require('body-parser'); app.use(bodyParser.urlencoded({limit: '50mb', extended: true})); app.use(bodyParser.json({limit: '50mb'})); intead使用: app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); 但是,通过这样做,我收到此错误: Unexpected token i in JSON at position 5 有没有人知道我在这里失踪? 提前致谢! 这是一个打印与我试图发送的对象为例:

如何更改Firebase中的body parser限制?

我试图代理一个file upload到firebase云function不暴露我们的APIurl。 看起来像Firebase正在使用Body-parser来parsing请求中的主体,但默认情况下它被限制为100kb。 我试过这个: var bodyParser = require('body-parser'); app.use(bodyParser.json({limit: '50mb'})); app.use(bodyParser.urlencoded({limit: '50mb', extended: true})); var bodyParser = require('body-parser'); app.use(bodyParser.json({limit: '50mb'})); app.use(bodyParser.urlencoded({limit: '50mb', extended: true})); 但它似乎没有使用bodyParser。 它使用embedded到Firebase框架中的私人内容。 有没有办法改变它的限制? 这是我得到的: 在getRawBody(/ usr / local / lib / lib)下,blockquote错误:{error:请求实体在readStream上太大(/usr/local/lib/node_modules/firebase-tools/node_modules/raw-body/index.js:196:17) (/usr/local/lib/node_modules/firebase-tools/node_modules/body-parser/lib/read.js:76:node_modules / firebase-tools / node_modules / raw-body / index.js:106:12) 3)在urlecodedParser(/usr/local/lib/node_modules/firebase-tools/node_modules/body-parser/lib/types/urlencoded.js:115:5)在Layer.handle [作为handle_request](/ usr / local / lib / node_modules / […]

使用Express进行处理的最佳实践

我正在写一个实现用户pipe理系统的网站,我不知道有什么关于表单处理的最佳实践,我不得不考虑。 尤其是性能,安全性,SEO和用户体验对我来说非常重要。 当我正在处理这个问题时,我偶然发现了一些问题,并没有find一个完整的节点/快速代码片断,我可以在这里找出所有我下面的问题。 用例:有人将更新他的个人资料的生日。 现在我正在对同一个URL进行一个POST请求来处理该页面上的表单,POST请求将以302redirect到相同的URL进行响应。 关于表单处理的一般问题: 我应该做一个POST请求+ 302redirect的表单处理,而不是像AJAX请求其他东西? 我应该如何处理无效的FORM请求(例如,无效login或注册期间已经使用的电子邮件地址)? expression关于表单处理的具体问题: 我之前插入任何东西,我想我需要清理和validation服务器端的所有表单域。 你会怎么做? 我阅读了有关CSRF的一些内容,但是我从来没有实施CSRF保护。 我也很高兴在代码片段中看到这一点 使用Express处理表单时是否需要处理任何其他可能的漏洞? 示例HTML /帕格: form#profile(method='POST', action='/settings/profile') input#profile-real-name.validate(type='text', name='profileRealName', value=profile.name) label(for='profile-real-name') Name textarea#profile-bio.materialize-textarea(placeholder='Tell a little about yourself', name='profileBio') | #{profile.bio} label(for='profile-bio') About input#profile-url.validate(type='url', name='profileUrl', value=profile.bio) label(for='profile-url') URL input#profile-location.validate(type='text', name='profileLocation', value=profile.location) label(for='profile-location') Location .form-action-buttons.right-align a.btn.grey(href='' onclick='resetForm()') Reset button.btn.waves-effect.waves-light(type='submit') 示例路由处理程序: router.get('/settings/profile', isLoggedIn, profile) router.post('/settings/profile', isLoggedIn, […]

使用NodeJS / ExpressJS和Postman无法获取POST数据

这是我的服务器的代码: var express = require('express'); var bodyParser = require("body-parser"); var app = express(); app.use(bodyParser.json()); app.post("/", function(req, res) { res.send(req.body); }); app.listen(3000, function () { console.log('Example app listening on port 3000!'); }); 从邮递员,我启动一个POST请求到http:// localhost:3000 /和身体/forms数据我有一个关键“富”和价值“酒吧”。 但是,我不断收到一个空的对象在响应。 req.body属性总是空的。 我错过了什么?

错误:与multer和body-parser无效的json

我目前在node.js应用程序中使用multer来处理multipart/form-data和body-parser 。 我试图使用POSTMAN POST表单数据,但它得到这个错误。 Error: invalid json at parse (/Users/k/Documents/application/node_modules/body-parser/lib/types/json.js:79:15) at /Users/k/Documents/application/node_modules/body-parser/lib/read.js:102:18 at IncomingMessage.onEnd (/Users/k/Documents/application/node_modules/body-parser/node_modules/raw-body/index.js:136:7) at IncomingMessage.g (events.js:199:16) at IncomingMessage.emit (events.js:104:17) at _stream_readable.js:908:16 at process._tickDomainCallback (node.js:381:11) 这就是我在server.js中添加multer和body-parser的方式 var express = require('express'); var mongoose = require('mongoose'); var bodyParser = require('body-parser'); var multer = require('multer'); var app = express(); app.use(bodyParser.urlencoded({extended: true})); app.use(bodyParser.json()); app.use(multer({ dest: './uploads/'})); 我想这可能是因为耳垂不工作。 当我删除body-parser并再次尝试时,它显示console.log(req.body)和console.log(req.files)空json。 […]

如何使用multer或body-parser上传文件

我是一个NodeJS初学者,跟着一本书“使用MongoDB和NodeJS进行Web开发”。 我在“第6章”中被卡住了。 当我使用Muller进行file upload时,服务器会引发以下错误: /Users/fk / Documents / imageuploader / node_modules / express / lib / application.js: 209 throw new TypeError('app.use() requires middleware functions'); ^ TypeError: app.use() requires middleware functions 但是当我用bodyParserreplace它时,服务器启动,但是当我点击上传button时,它给我在浏览器上的以下错误。 500 TypeError: Cannot read property 'file' of undefined 但是,它应该将我redirect到另一个页面,其中显示上传的文件。 这里是我的bodyParser代码,请看我是否正确使用它,因为它在服务器启动时给我“body-parser deprecated”。 我看过其他的问题,像我和我一样,但没有一个真正的工作。 app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser({ uploadDir: path.join(__dirname, '../public/upload/temp') })); 下面的代码显示了我如何使用Muller,以防万一如果有什么我不该做的,请让我知道。 在上传文件,body-parser或multer的情况下哪个更好? […]