复合JS - 在API中使用POST方法

时间:2013-02-27 08:30:31

标签: node.js

我正在使用CompoundJS,我想为我的移动应用程序创建一个api。

以下是预期输出

1)api localhost:3000 / test

2)有些数据必须发布到此api说number: 1

3)API应回复发布的号码,结果应为= 1

我尝试了下面的

1)创建一个控制器说test_controller.js

2)添加了以下代码

的动作showtest
action(function showtest(req, res) {
  console.log(req.body);
});

3)添加路由器配置,如

map.post('test', 'test#showtest')

当我发布到url localhost:3000 / test时,显示 就像200成功,但在Firebug控制台中,响应显示错误。

我做错了什么?是否像Rails render :text => "hello"一样 我们可以将它用于CompoundJS。

1 个答案:

答案 0 :(得分:0)

您的行为不正确。试试这个:

action('showtest', function() {
  for (var key in req.body)
  {
    send(key.toString());
    break;
  }
});

Express用于在请求对象上公开.rawBody属性,该属性将包含已发布的原始数据,但从Express 3.x开始,此功能已被删除。上面代码中的for循环将返回req.body对象的第一个键(当数据POST只是一个数字时,将是该数字)。