2013-02-27 77 views
0

我正在開發CompoundJS,我想爲我的移動應用程序創建一個API。Compound JS - 在API中使用POST方法

下面是所期望的輸出

1)的API本地主機:3000 /測試

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本地主機:3000 /測試,它顯示 就像200成功,但在Firebug控制檯中響應顯示錯誤。

我在做什麼錯了?有什麼像Rails render :text => "hello" 我們可以使用它作爲CompoundJS。

回答

0

您的操作不正確。試試這個:

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

快遞用來揭露請求對象,其中將包含發佈的原始數據上.rawBody財產,但由於快遞3.X的這一功能已被刪除。上述代碼中的for循環將返回req.body對象的第一個鍵(當POST'ed數據只是一個數字時,該數字就是該數字)。

+0

是的,這種格式可以工作..但是當從移動設備訪問API時返回'不正確的真實性標記','錯誤的請求'消息。 – balanv 2013-02-27 10:55:18

+0

我編輯了代碼,以防發佈到'/ test'的唯一數據只是一個數字。 – robertklep 2013-02-27 11:23:10