所以我在与node.js一起运行的server.js文件中有以下代码。我正在使用express处理HTTP请求。
app.post('/api/destinations', function (req, res) {
var new_destination = req.body;
console.log(req.body);
console.log(req.headers);
db.Destination.create(new_destination, function(err, destination){
if (err){
res.send("Error: "+err);
}
res.json(destination);
});
});
我在终端中运行以下命令:
curl -XPOST -H "Content-Type: application/json" -d '{"location": "New York","haveBeen": true,"rating": 4}' http://localhost:3000/api/destinations
运行该server.js后,将输出以下内容。
{}
{ host: 'localhost:3000',
'user-agent': 'curl/7.43.0',
accept: '*/*',
'content-type': 'application/json',
'content-length': '53' }
所以req.body是{}
。我阅读了其他有关类似问题的Stack
Overflow帖子,其中由于正文解析器,内容类型不正确。但这不是问题,因为内容类型是application / json。
有什么想法如何获得请求的实际内容吗?
提前致谢。
您还需要bodyParser.json:
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
问题内容: 将请求正文与GET请求一起传递是否违反REST风格? 例如在Elasticsearch中过滤一些信息 甚至设计了一些工具来避免GET请求中的请求主体(例如邮递员) 问题答案: 从RFC: GET请求消息中的有效负载没有定义的语义。在GET请求上发送有效内容正文可能会导致某些现有实现拒绝该请求。 换句话说,这不是禁止的,但是它是未定义的行为,应避免使用。HTTP客户端,服务器和代理可以随
我试图在flask应用程序上记录post请求,如下所示: 我这样做是因为我怀疑有时我会在POST上得到一个格式错误的JSON对象。我看到的问题是日志包含一个截断的请求体——它似乎被夹在中间... 我不能放日志摘要,因为它是敏感数据。。为什么请求被截断?我做错了吗? 谢谢
我正在用Application/JSON数据发送原始POST请求到邮递员服务器。我需要使用这个JSON对象,并在请求前脚本中追加一些数据。但是我只能找到如何访问环境变量,而不能请求主体。有人知道吗?谢了!
如何将转换为请求正文的表示形式?或者,如何正确地记录整个请求/响应,同时能够在其中散列潜在的凭据?
我需要你的帮助。我正在使用Spring3实现一个RESTful WebService的服务器部分。不幸的是,我对如何发送请求没有任何影响,所以没有办法改变这一点。 我想接收一个作为多部分/表单数据的http post请求。我有一个@RestController并做了一个@RequestMapping..请求到达我的方法 我希望可以使用方法检索所有部分。这是不可能的,总是没有可用的零件。我想我找到了
问题内容: 我正在尝试使用类似于以下内容的InputStream来执行POST: 在这种情况下,InputStream来自压缩的tar文件。 张贴InputStream的正确方法是什么? 问题答案: 我在这里想到的唯一解决方案是使用TypeFile类: 和接口(这次没有显式设置Content-Type标头): 使用我自己的TypedInput实现会导致模糊的EOF异常,即使我提供了length()