2014-11-03 48 views
0

我想選擇一個值形成的消息後,我recive爲CSV數據,像這樣:與身體解析器選擇從線的值節點JS

{ reader_name: '"xx-xx-xx-xx-xx-xx"', 
    mac_address: '"name"', 
    line_ending: '\n', 
    field_delim: ',', 
    field_names: 'antenna_port,epc,first_seen_timestamp,peak_rssi', 
    field_values: '1,"000005555666600000000000",1414762247726148,-68\n' } 

我要的是爲例如,對於線FIELD_NAMES和field_values,選擇像antenna_port一個獨立的價值,和1

我試圖爲:

app.post('/', function(req, res) { 
     console.log('Encendido'); 
     var epc = req.body.field_values; 
     console.log("MAC= "+epc); 
     res.send('si'); 

但我不知道如何選擇,一個人價值線。

+0

感謝您的重播,我該如何選擇一個特定值,例如第二個 – diego 2014-11-03 13:20:44

回答

0

這是一個字符串。使用req.body.field_values.split(",")來獲取單個值。

或者,如果你想要的名稱分配給它,你可以這樣做:

var names = req.body.field_names.split(","); 
var values = req.body.field_values.replace("\n", "").split(","); 

var result = {}; 

for(var i = 0; i < names.length; i++) { 
    result[names[i]] = values[i]; 
} 

這將返回:

{ 
    antenna_port: "1", 
    epc: ""000005555666600000000000"", 
    first_seen_timestamp: "1414762247726148", 
    peak_rssi: "-68" 
} 
+0

謝謝你,這對我很有幫助。 – diego 2014-11-03 13:44:06