问题标签 [body-parser]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 使用 JSON 与 urlencoded 的 XHR 请求:性能和安全性
我有 xhr 请求,其中包含 name=John username=JohnTheGreat 之类的数据。在这种情况下,我可以发送一个内容类型为:application/x-www-form-urlencoded 的 xhr:
或者我可以使用内容类型:应用程序/json:
在服务器端(我使用带 express 的 nodejs 服务器),对于这两种情况,我都使用 body-parser 来解析数据。
1)这两者中的哪一个会被解析得更快?我猜它会是 Json,因为它显然只涉及字符串连接和 eval,而 urlencoded 字符串似乎意味着很多字符串操作。
2)对于这些情况,两者中哪一个更安全?一般来说,它们在现代浏览器中的安全问题是什么(如果有的话)?(例如,一个用户可以写一些脚本作为他的名字,当被解析时将被执行?)
node.js - 为什么 Express 不捆绑正文解析器?
我了解它是如何body-parser
工作的,但我不知道为什么这个功能不会与 Express 一起使用。看起来有点傻,它提供的功能非常基本。为什么不能在没有 的情况下从POST
请求中获取数据body-parser
?
javascript - Express body-parser gziped json没有变成对象
我正在尝试将 gzipped json 发送到 nodeJS/Express 服务器,但我无法让它工作,在生产中我正在使用一些代码来 gzip 一个 json 对象并将其发送,但出于测试目的,我让它与 curl 一起运行
我的 Express 应用程序只是一个使用 body-parser 模块的普通 express 4 应用程序:
并且正在使用集群模块:
有一条路线:
如果我用 curl 发帖
我得到了预期:
如果我从文件中读取:
我得到回应:
该文件的内容是:
如果我尝试使用压缩数据进行卷曲:
我得到与以前相同的 400,400 是我的代码在发送压缩数据时收到的内容..
到目前为止,我能够完成我想要的唯一方法是使用 body-parser text/raw,它{"data":[{"foo":"bar"}]}
作为 req.body 和一种字符串类型返回var body = eval( "(" + req.body + ")" )
,然后将其转换为 json 对象,但这很危险因为任何人都可以在请求中发送一些 js 并劫持服务器..
node.js - 文件上传挂在生产代码上,但在本地工作 - multer,node.js
我正在开发一个用 express 3 编写的应用程序,现在我们升级到 express 4,我在文件上传时遇到了问题。一切都可以在我的本地计算机 mac OSX 上运行,但不能在 ubuntu 上的生产服务器上运行。
我正在上传 zip 文件,里面有 png 和 psd。
我正在通过多部分形式上传文件:使用 multer 中间件。
本地一切都很好,但在生产环境中,连接正在中断。文件开始上传到主上传根目录,但作为块的一部分,例如我上传了 50 mb 的 zip 文件,但上传了大约 30 kb 并且连接中断,因为将数据作为块上传的 onFileDataupload 事件中断了。
app.js 中的设置
我的身体解析器设置:
我的 multer 设置:
}));
我也尝试过强大的替代方案,我有同样的问题,在本地工作,不在生产环境中工作。而且我认为这可能是按节点管理的请求的问题。在生产环境中,我们使用 pm2。文件上传时,Smoething 正在断开连接。
有没有人遇到过类似的问题并找到解决方案?谢谢
javascript - 将 http-proxy 和 body-parser 与 express 一起使用时,节点挂起 POST 请求
我也已将此发布到相关问题上http-proxy
。
我正在使用http-proxy
withexpress
所以我可以拦截客户端和 api 之间的请求,以便添加一些 cookie 进行身份验证。
为了进行身份验证,客户端必须发送一个 POST 请求,x-www-form-urlencoded
其内容类型为。所以我使用body-parser
中间件来解析请求体,这样我就可以在请求中插入数据。
http-proxy
据说使用有问题,body-parser
因为它将主体解析为流并且从不关闭它,因此代理永远不会完成请求。
http-proxy 示例中有一个解决方案,可以在我尝试使用解析后“重新传输”请求。我也尝试connect-restreamer
在同一问题中使用该解决方案,但没有成功。
我的代码看起来像这样
我收到这个错误
我试图调试流程,但我正在抓住稻草。请问有什么建议吗??
node.js - Express set app.use middleware in every file?
I've created a very basic express js application. After setting routes and other things I did app.use('/api/', require('./api/api.js'));
api.js looks something like this:
I'm using Postman chrome extension to post to this route. The response is empty {}
.
The question is: as long as I have in my app.js
body-parser
middleware set do I need to set it again in api.js
? If not why I have an empty response ?
In app.js
body-parser is set like this:
javascript - Express js - 请求正文为空
我刚刚安装了最新版本的模块。我无法获得任何 GET 或 POST 变量。我做错了什么?节点:v0.12.2
http://localhost:3000/?token=devvvvv GET 返回:您发布:{}
感谢您的回答,但 POST 的问题没有解决... http://localhost:3000/上的 POST token=as123ds 在req.body 中返回空数组 我该如何解决这个问题?
javascript - 如何让身体解析器解析表情符号?
我在 Express 中有以下中间件:
当我尝试将表情符号发布到我的服务器时,app.use(bodyParser.json({ limit: '50mb' }));
换行符并使服务器崩溃。我正在寻找一种在 Express 或 body parser 中处理表情符号的方法,但似乎对此几乎没有支持。如何让身体解析器解析表情符号?
编辑:
这是我通过 curl 发送到我的 Express 服务器的消息负载
索引.html
node.js - express 4.0中的“扩展”是什么意思?
我在我的应用程序中使用 express 和 body-parser。
但是,express 4.0 中的“扩展”是什么意思?
我找到了这个
但是,我仍然无法理解它的含义。
scala - 使用temporaryFile bodyParser在Play中检测取消的请求
如果调用者取消了使用Action.async(temporaryFile)
bodyparser 的大型 PUT/POST 操作,则 Action 正文将正常执行。java.nio.channels.ClosedChannelException
但似乎只发生在将响应写回通道时,而不是在请求完成之前关闭通道时发生。
我发现的唯一安全措施是手动与标头进行比较file.length
,Content-Length
这对于流式请求甚至是不可能的。
这是故意的吗?如果是这样,如果通道被客户端中间请求关闭,是否还有其他钩子在请求执行之前使请求失败?