2017-11-17 5 views
-1

私はNodeJSを初めて使用しています。 私はサーバーがreq.bodyでデータを受信NodeJSのサーバからクライアントへのデータの表現

<form action="/Device_Data" method="post"> 
    <select name="deviceSelect" id="deviceSelect" class="selectdevice" type = "text" style="margin-top:1.5%"> 
    <option value="" selected="selected">Choose Device</option> 
    <option value="Device1">Device 1</option> 
    <option value="Device2">Device 2</option> 
    <option value="Device3">Device 3</option> 
    <option value="Device4">Device 4</option> 
    <option value="Device5">Device 5</option> 
    <option value="Device6">Device 6</option> 
    <option value="Device7">Device 7</option> 
    <option value="Device8">Device 8</option> 
    </select> 
    <button id="Import" value="Import" class="button1" type="submit" >Import</button> 
</form> 

、HTMLは以下のサーバー にボタンPOSTデータを送信するタスクはHTMLコードで実行したいです。

app.post("/Device_Data", function (req, res) {  
    console.log("Got response: " + res.statusCode); 

    // result.entries contains entities matching the query 
    res.setHeader('Content-Type', 'application/json'); 
    //console.log(req.body.deviceSelect); 

    var deviceSelected = (req.body.deviceSelect); 
    console.log(deviceSelected); 

    var devData = ["deviceId","trainId", "messageId"]; 

    //var devData = []; 
    var text = JSON.stringify(response.body); 
    var obj = JSON.parse(text); 
    res.write("Hello"); 
}); 

今、私は疑問を持っている部分は、私は、サーバーからの私のクライアントに文字列のdevData配列を送信することができ、何がそのためのコードでなければなりませんどのように、 のですか?

ありがとうございます。

+0

ビットのために急行して働いていない - しかし、私はあなたが 'res.write(JSON.stringify(devData))を行うことができると思います;' - そのあなたのdevData配列をJSONとして返します。あなたは何をしたいのですか? – doublesidedstickytape

+0

私はそのデータを自分のウェブページに表示したい、私は同じデータをPOSTした。 私は $アヤックス({ URL、以下のとおりAJAX呼び出しを使用しています: '/ Device_Data'、 タイプ: 'POST'、 クロスドメイン:真、 データ:{}、 成功:機能(データ) { 警報(+ data.length "データ長が");} 、 エラー:関数(){ アラート( "エラー");} })。 –

答えて

1

エクスプレスドキュメントによれば、res.jsonを使用してjsonデータをリクエスト回答として送信します。

res.status(200).json(devData); 

ドキュメントからの例:

res.json(null); 
res.json({ user: 'tobi' }); 
res.status(500).json({ error: 'message' }); 
+0

私のAJAX呼び出しのようになり、 $アヤックス({ URL: '/ Device_Data'、 タイプ: 'POST'、 クロスドメイン:真、 データ:{}、 成功:機能(データ){ アラート(データ長は+ data.length); }、 エラー:function(){ アラート( "エラー"); } }); –

+0

および?それは動作しませんか? –

+0

動作しません。常にエラーアラートを表示します。 –

関連する問題