我有一个相对较大的(50K)文本文件被发布:
curl -H "Content-Type:text/plain" -d @system.log http://localhost:8888/
使用代理进行测试,我可以看到正在发布文件的完整内容。
然而,Express.JS看到100:标题中的继续,以及一个空白的正文。我有:
app.use(express.bodyParser());
启用,BTW。以下是标题:
{ 'user-agent': 'curl/7.21.4 (universal-apple-darwin11.0) libcurl/7.21.4 OpenSSL/0.9.8r zlib/1.2.5',
host: 'localhost:8888',
accept: '*/*',
'content-type': 'text/plain',
'content-length': '55909',
expect: '100-continue' }
req.body是空的:
{}
如何查看Express.JS中发布的所有数据?
答案 0 :(得分:1)
我的猜测是,节点会根据node http module docs自动发送100-continue
响应(假设您使用的是足够新的节点版本)。我猜想发生的只是text/plain
内容类型不是bodyParser
可以解析成其他内容的格式(与json或www-form-urlencoded相对)。因此,您可以从请求将为其读取的每个数据块发出的标准data
事件中获取数据。