0

我有一个用节点编写的 Web 服务。我可以成功调用这个端点。它的设置是这样的:

myWebService: function(req, res) {
  console.log('Request received.');
  console.log(req);
}

我可以通过标题成功传递值。但是,我试图弄清楚如何将原始 JSON 从 Postman 发送到 Web 服务。在 Postman 中,我单击了“Raw”选项卡,并从下拉列表中选择了 JSON。我正在传递一些看起来像这样的 JSON:

{
  v1:2,
  v2:'?',
  v3:'Some string of text',
  v4:['value 1', 'value 2'], 
  v5:{param1:"p1Value", param2:3 }
}

当收到来自 Postman 的请求时,请求中没有 JSON。我的端点定义如下:

app.post('/api/myWebService', api.myWebService);

我知道它的工作,因为“收到的请求”正在打印。另外,我可以看到请求内容,包括标头变量。我不确定为什么不打印 JSON 值。如果我在 x-www-form-urlencodded 选项卡中输入键/值对,我可以在 req.body 变量中看到这些值。但是,我想让它尽可能干净,并尽可能发送纯 JSON。

我究竟做错了什么?

4

1 回答 1

1

对于原始 JSON,键需要双引号(对于初学者):

{
  "v1": 2,
  "v2": "?",
  "v3": "Some string of text",
  "v4": ["value 1", "value 2"], 
  "v5": {param1:"p1Value", param2:3}
}
于 2014-07-22T19:58:42.180 回答